vue-api-request-builder 0.2.6 → 0.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.es.js +877 -871
- package/dist/index.umd.js +16 -16
- package/package.json +2 -2
package/dist/index.es.js
CHANGED
|
@@ -6,13 +6,13 @@ var Tn = (t) => {
|
|
|
6
6
|
};
|
|
7
7
|
var jr = (t, e, n) => e in t ? Br(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;
|
|
8
8
|
var h = (t, e, n) => jr(t, typeof e != "symbol" ? e + "" : e, n), Mt = (t, e, n) => e.has(t) || Tn("Cannot " + n);
|
|
9
|
-
var K = (t, e, n) => (Mt(t, e, "read from private field"), n ? n.call(t) : e.get(t)), Ce = (t, e, n) => e.has(t) ? Tn("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(t) : e.set(t, n),
|
|
9
|
+
var K = (t, e, n) => (Mt(t, e, "read from private field"), n ? n.call(t) : e.get(t)), Ce = (t, e, n) => e.has(t) ? Tn("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(t) : e.set(t, n), se = (t, e, n, a) => (Mt(t, e, "write to private field"), a ? a.call(t, n) : e.set(t, n), n), Ot = (t, e, n) => (Mt(t, e, "access private method"), n);
|
|
10
10
|
var Ln = (t, e, n) => Lr(Tr(t), n, e);
|
|
11
|
-
import { defineComponent as st, ref as L, watch as Qe, resolveComponent as j, createElementBlock as J, openBlock as M, createElementVNode as N, createCommentVNode as
|
|
12
|
-
const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex gap-2" },
|
|
11
|
+
import { defineComponent as st, ref as L, watch as Qe, resolveComponent as j, createElementBlock as J, openBlock as M, createElementVNode as N, createCommentVNode as te, createBlock as me, createVNode as E, withCtx as R, createTextVNode as D, toDisplayString as Ee, Fragment as _n, renderList as va, computed as Gt, useModel as Ca, normalizeStyle as Mr, withDirectives as Or, vModelText as Gr, nextTick as Fr, onMounted as Dr, unref as Ur } from "vue";
|
|
12
|
+
const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex gap-2" }, Hr = {
|
|
13
13
|
key: 0,
|
|
14
14
|
class: "flex flex-col gap-1"
|
|
15
|
-
},
|
|
15
|
+
}, Wr = { class: "flex w-full gap-1 items-center" }, Vr = /* @__PURE__ */ st({
|
|
16
16
|
__name: "KeyValueInput",
|
|
17
17
|
props: {
|
|
18
18
|
modelValue: {},
|
|
@@ -25,48 +25,48 @@ const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex
|
|
|
25
25
|
const n = t, a = e, r = L(n.modelValue);
|
|
26
26
|
Qe(
|
|
27
27
|
() => n.modelValue,
|
|
28
|
-
(
|
|
29
|
-
r.value =
|
|
28
|
+
(l) => {
|
|
29
|
+
r.value = l;
|
|
30
30
|
}
|
|
31
31
|
), Qe(
|
|
32
32
|
r,
|
|
33
|
-
(
|
|
34
|
-
a("update:modelValue",
|
|
33
|
+
(l) => {
|
|
34
|
+
a("update:modelValue", l);
|
|
35
35
|
},
|
|
36
36
|
{ deep: !0 }
|
|
37
37
|
);
|
|
38
38
|
const s = () => {
|
|
39
39
|
r.value.push({ key: "", value: "" });
|
|
40
|
-
}, o = (
|
|
41
|
-
r.value.splice(
|
|
42
|
-
},
|
|
40
|
+
}, o = (l) => {
|
|
41
|
+
r.value.splice(l, 1);
|
|
42
|
+
}, i = () => {
|
|
43
43
|
r.value = [];
|
|
44
44
|
};
|
|
45
|
-
return (
|
|
45
|
+
return (l, c) => {
|
|
46
46
|
const u = j("a-button"), p = j("a-popconfirm"), d = j("a-input"), f = j("a-typography-paragraph"), m = j("a-typography");
|
|
47
47
|
return M(), J("div", zr, [
|
|
48
48
|
N("div", qr, [
|
|
49
|
-
|
|
49
|
+
E(u, {
|
|
50
50
|
type: "primary",
|
|
51
51
|
onClick: s,
|
|
52
52
|
class: "w-full max-w-50%",
|
|
53
53
|
size: "small"
|
|
54
54
|
}, {
|
|
55
55
|
default: R(() => [
|
|
56
|
-
D(Ee(
|
|
56
|
+
D(Ee(l.addButtonText), 1)
|
|
57
57
|
]),
|
|
58
58
|
_: 1
|
|
59
59
|
}),
|
|
60
|
-
|
|
60
|
+
E(p, {
|
|
61
61
|
class: "w-full max-w-50%",
|
|
62
62
|
title: "确认清空",
|
|
63
63
|
description: "确定要清空所有参数吗?",
|
|
64
64
|
"ok-text": "确认",
|
|
65
65
|
"cancel-text": "取消",
|
|
66
|
-
onConfirm:
|
|
66
|
+
onConfirm: i
|
|
67
67
|
}, {
|
|
68
68
|
default: R(() => [
|
|
69
|
-
|
|
69
|
+
E(u, {
|
|
70
70
|
type: "primary",
|
|
71
71
|
danger: "",
|
|
72
72
|
size: "small",
|
|
@@ -82,13 +82,13 @@ const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex
|
|
|
82
82
|
_: 1
|
|
83
83
|
})
|
|
84
84
|
]),
|
|
85
|
-
r.value.length > 0 ? (M(), J("div",
|
|
85
|
+
r.value.length > 0 ? (M(), J("div", Hr, [
|
|
86
86
|
(M(!0), J(_n, null, va(r.value, (_, g) => (M(), J("div", {
|
|
87
87
|
key: g,
|
|
88
88
|
class: "flex"
|
|
89
89
|
}, [
|
|
90
|
-
N("div",
|
|
91
|
-
|
|
90
|
+
N("div", Wr, [
|
|
91
|
+
E(u, {
|
|
92
92
|
type: "primary",
|
|
93
93
|
danger: "",
|
|
94
94
|
onClick: (b) => o(g),
|
|
@@ -100,14 +100,14 @@ const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex
|
|
|
100
100
|
])),
|
|
101
101
|
_: 2
|
|
102
102
|
}, 1032, ["onClick"]),
|
|
103
|
-
|
|
103
|
+
E(d, {
|
|
104
104
|
value: _.key,
|
|
105
105
|
"onUpdate:value": (b) => _.key = b,
|
|
106
106
|
placeholder: "键",
|
|
107
107
|
style: { width: "60%" },
|
|
108
108
|
size: "small"
|
|
109
109
|
}, null, 8, ["value", "onUpdate:value"]),
|
|
110
|
-
|
|
110
|
+
E(d, {
|
|
111
111
|
value: _.value,
|
|
112
112
|
"onUpdate:value": (b) => _.value = b,
|
|
113
113
|
placeholder: "值",
|
|
@@ -116,21 +116,21 @@ const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex
|
|
|
116
116
|
}, null, 8, ["value", "onUpdate:value"])
|
|
117
117
|
])
|
|
118
118
|
]))), 128))
|
|
119
|
-
])) :
|
|
120
|
-
|
|
119
|
+
])) : te("", !0),
|
|
120
|
+
l.showPreview ? (M(), me(m, {
|
|
121
121
|
key: 1,
|
|
122
122
|
class: "m-0"
|
|
123
123
|
}, {
|
|
124
124
|
default: R(() => [
|
|
125
|
-
|
|
125
|
+
E(f, { class: "!m-0" }, {
|
|
126
126
|
default: R(() => [
|
|
127
|
-
N("pre", null, Ee(
|
|
127
|
+
N("pre", null, Ee(l.previewText), 1)
|
|
128
128
|
]),
|
|
129
129
|
_: 1
|
|
130
130
|
})
|
|
131
131
|
]),
|
|
132
132
|
_: 1
|
|
133
|
-
})) :
|
|
133
|
+
})) : te("", !0)
|
|
134
134
|
]);
|
|
135
135
|
};
|
|
136
136
|
}
|
|
@@ -160,46 +160,51 @@ const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex
|
|
|
160
160
|
}, rs = { class: "flex flex-row gap-1 items-center" }, ss = /* @__PURE__ */ st({
|
|
161
161
|
__name: "RequestForm",
|
|
162
162
|
props: {
|
|
163
|
-
modelValue: { default: () => Xr }
|
|
163
|
+
modelValue: { default: () => Xr },
|
|
164
|
+
showAuth: { type: Boolean, default: !1 }
|
|
164
165
|
},
|
|
165
166
|
emits: ["update:modelValue"],
|
|
166
167
|
setup(t, { emit: e }) {
|
|
167
|
-
const n = t, a = e, r = L(n.modelValue.method), s = L(n.modelValue.url), o = L(n.modelValue.auth.type),
|
|
168
|
-
function w(
|
|
168
|
+
const n = t, a = e, r = L(n.modelValue.method), s = L(n.modelValue.url), o = L(n.modelValue.auth.type), i = L(n.modelValue.path), l = L(n.modelValue.auth.username || ""), c = L(n.modelValue.auth.password || ""), u = L(n.modelValue.auth.token || ""), p = L(n.modelValue.params), d = L(n.modelValue.headers), f = L(n.modelValue.body.formData || []), m = L(n.modelValue.body.type), _ = L(n.modelValue.body.json || ""), g = L(n.modelValue.body.raw || ""), b = L("");
|
|
169
|
+
function w(x, $) {
|
|
169
170
|
let T;
|
|
170
171
|
return function(...ue) {
|
|
171
|
-
clearTimeout(T), T = setTimeout(() =>
|
|
172
|
+
clearTimeout(T), T = setTimeout(() => x.apply(this, ue), $);
|
|
172
173
|
};
|
|
173
174
|
}
|
|
174
|
-
const k = () =>
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
175
|
+
const k = () => {
|
|
176
|
+
const x = {
|
|
177
|
+
method: r.value,
|
|
178
|
+
url: s.value,
|
|
179
|
+
path: i.value,
|
|
180
|
+
auth: { type: "none" },
|
|
181
|
+
// 默认提供一个空的auth对象
|
|
182
|
+
params: p.value,
|
|
183
|
+
headers: d.value,
|
|
184
|
+
body: {
|
|
185
|
+
type: m.value,
|
|
186
|
+
...m.value === "application/json" ? { json: _.value } : m.value === "multipart/form-data" ? { formData: f.value } : { raw: g.value }
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
return n.showAuth && (x.auth = {
|
|
179
190
|
type: o.value,
|
|
180
191
|
...o.value === "Basic" ? {
|
|
181
|
-
username:
|
|
192
|
+
username: l.value,
|
|
182
193
|
password: c.value
|
|
183
194
|
} : o.value === "Bearer" ? {
|
|
184
195
|
token: u.value
|
|
185
196
|
} : {}
|
|
186
|
-
},
|
|
187
|
-
|
|
188
|
-
headers: d.value,
|
|
189
|
-
body: {
|
|
190
|
-
type: m.value,
|
|
191
|
-
...m.value === "application/json" ? { json: _.value } : m.value === "multipart/form-data" ? { formData: f.value } : { raw: g.value }
|
|
192
|
-
}
|
|
193
|
-
}), v = w(() => {
|
|
197
|
+
}), x;
|
|
198
|
+
}, v = w(() => {
|
|
194
199
|
a("update:modelValue", k());
|
|
195
200
|
}, 100);
|
|
196
201
|
Qe(
|
|
197
202
|
[
|
|
198
203
|
r,
|
|
199
204
|
s,
|
|
200
|
-
l,
|
|
201
|
-
o,
|
|
202
205
|
i,
|
|
206
|
+
o,
|
|
207
|
+
l,
|
|
203
208
|
c,
|
|
204
209
|
u,
|
|
205
210
|
p,
|
|
@@ -215,15 +220,15 @@ const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex
|
|
|
215
220
|
{ deep: !0 }
|
|
216
221
|
), Qe(
|
|
217
222
|
() => n.modelValue,
|
|
218
|
-
(
|
|
223
|
+
(x) => {
|
|
219
224
|
const $ = k();
|
|
220
|
-
JSON.stringify(
|
|
225
|
+
JSON.stringify(x) !== JSON.stringify($) && (r.value = x.method, s.value = x.url, i.value = x.path, n.showAuth && x.auth && (o.value = x.auth.type, l.value = x.auth.username || "", c.value = x.auth.password || "", u.value = x.auth.token || ""), p.value = x.params, d.value = x.headers, m.value = x.body.type, f.value = x.body.formData || [], _.value = x.body.json || "", g.value = x.body.raw || "");
|
|
221
226
|
},
|
|
222
227
|
{ deep: !0 }
|
|
223
228
|
);
|
|
224
229
|
const A = Gt(() => {
|
|
225
|
-
const
|
|
226
|
-
return
|
|
230
|
+
const x = p.value.filter(($) => !!$.key).map(($) => $.key + "=" + encodeURIComponent($.value)).join("&");
|
|
231
|
+
return x === "" ? "" : "?" + x;
|
|
227
232
|
}), O = Gt(() => {
|
|
228
233
|
switch (m.value) {
|
|
229
234
|
case "application/json":
|
|
@@ -233,14 +238,14 @@ const zr = { class: "key-value-input flex flex-col gap-1" }, qr = { class: "flex
|
|
|
233
238
|
return "Invalid JSON";
|
|
234
239
|
}
|
|
235
240
|
case "multipart/form-data":
|
|
236
|
-
const
|
|
241
|
+
const x = "----WebKitFormBoundaryPreview";
|
|
237
242
|
return f.value.filter((T) => !!T.key).map(
|
|
238
|
-
(T) => `--${
|
|
243
|
+
(T) => `--${x}\r
|
|
239
244
|
Content-Disposition: form-data; name="${T.key}"\r
|
|
240
245
|
\r
|
|
241
246
|
${T.value}\r
|
|
242
247
|
`
|
|
243
|
-
).join("") + `--${
|
|
248
|
+
).join("") + `--${x}--\r
|
|
244
249
|
`;
|
|
245
250
|
case "text/plain":
|
|
246
251
|
return g.value || "-空-";
|
|
@@ -255,30 +260,30 @@ ${T.value}\r
|
|
|
255
260
|
}
|
|
256
261
|
}, q = () => {
|
|
257
262
|
try {
|
|
258
|
-
const
|
|
259
|
-
s.value = `${$.protocol}//${$.host}`,
|
|
263
|
+
const x = s.value, $ = new URL(x);
|
|
264
|
+
s.value = `${$.protocol}//${$.host}`, i.value = $.pathname;
|
|
260
265
|
const T = new URLSearchParams($.search), ue = [];
|
|
261
|
-
T.forEach((
|
|
262
|
-
ue.push({ key: ie, value:
|
|
266
|
+
T.forEach((W, ie) => {
|
|
267
|
+
ue.push({ key: ie, value: W });
|
|
263
268
|
}), p.value = ue;
|
|
264
|
-
} catch (
|
|
265
|
-
console.error("URL解析失败:",
|
|
269
|
+
} catch (x) {
|
|
270
|
+
console.error("URL解析失败:", x);
|
|
266
271
|
}
|
|
267
272
|
}, ce = Gt(() => {
|
|
268
273
|
if (!s.value) return !1;
|
|
269
274
|
try {
|
|
270
|
-
const
|
|
275
|
+
const x = s.value, $ = new URL(x);
|
|
271
276
|
return $.search !== "" || $.pathname !== "/";
|
|
272
277
|
} catch {
|
|
273
278
|
return !1;
|
|
274
279
|
}
|
|
275
280
|
});
|
|
276
|
-
return (
|
|
277
|
-
const T = j("a-input"), ue = j("a-button"),
|
|
281
|
+
return (x, $) => {
|
|
282
|
+
const T = j("a-input"), ue = j("a-button"), W = j("a-select-option"), ie = j("a-select"), ye = j("a-card"), Le = j("a-radio-button"), Bn = j("a-radio-group"), Rr = j("a-input-password"), jt = j("a-textarea"), Nr = j("a-alert"), Pr = j("a-form");
|
|
278
283
|
return M(), J("div", Zr, [
|
|
279
|
-
|
|
284
|
+
E(Pr, { layout: "vertical" }, {
|
|
280
285
|
default: R(() => [
|
|
281
|
-
|
|
286
|
+
E(ye, {
|
|
282
287
|
title: "URL配置",
|
|
283
288
|
class: "form-section",
|
|
284
289
|
size: "small"
|
|
@@ -286,13 +291,13 @@ ${T.value}\r
|
|
|
286
291
|
default: R(() => [
|
|
287
292
|
N("div", Kr, [
|
|
288
293
|
N("div", Jr, [
|
|
289
|
-
|
|
294
|
+
E(T, {
|
|
290
295
|
value: s.value,
|
|
291
296
|
"onUpdate:value": $[0] || ($[0] = (B) => s.value = B),
|
|
292
297
|
placeholder: "基础URL",
|
|
293
298
|
size: "small"
|
|
294
299
|
}, null, 8, ["value"]),
|
|
295
|
-
ce.value ? (M(),
|
|
300
|
+
ce.value ? (M(), me(ue, {
|
|
296
301
|
key: 0,
|
|
297
302
|
type: "primary",
|
|
298
303
|
size: "small",
|
|
@@ -302,41 +307,41 @@ ${T.value}\r
|
|
|
302
307
|
D("拆解")
|
|
303
308
|
])),
|
|
304
309
|
_: 1
|
|
305
|
-
})) :
|
|
310
|
+
})) : te("", !0)
|
|
306
311
|
]),
|
|
307
312
|
N("div", Qr, [
|
|
308
|
-
|
|
313
|
+
E(ie, {
|
|
309
314
|
value: r.value,
|
|
310
315
|
"onUpdate:value": $[1] || ($[1] = (B) => r.value = B),
|
|
311
316
|
class: "w-40",
|
|
312
317
|
size: "small"
|
|
313
318
|
}, {
|
|
314
319
|
default: R(() => [
|
|
315
|
-
|
|
320
|
+
E(W, { value: "GET" }, {
|
|
316
321
|
default: R(() => $[14] || ($[14] = [
|
|
317
322
|
D("GET")
|
|
318
323
|
])),
|
|
319
324
|
_: 1
|
|
320
325
|
}),
|
|
321
|
-
|
|
326
|
+
E(W, { value: "POST" }, {
|
|
322
327
|
default: R(() => $[15] || ($[15] = [
|
|
323
328
|
D("POST")
|
|
324
329
|
])),
|
|
325
330
|
_: 1
|
|
326
331
|
}),
|
|
327
|
-
|
|
332
|
+
E(W, { value: "PUT" }, {
|
|
328
333
|
default: R(() => $[16] || ($[16] = [
|
|
329
334
|
D("PUT")
|
|
330
335
|
])),
|
|
331
336
|
_: 1
|
|
332
337
|
}),
|
|
333
|
-
|
|
338
|
+
E(W, { value: "DELETE" }, {
|
|
334
339
|
default: R(() => $[17] || ($[17] = [
|
|
335
340
|
D("DELETE")
|
|
336
341
|
])),
|
|
337
342
|
_: 1
|
|
338
343
|
}),
|
|
339
|
-
|
|
344
|
+
E(W, { value: "OPTIONS" }, {
|
|
340
345
|
default: R(() => $[18] || ($[18] = [
|
|
341
346
|
D("OPTIONS")
|
|
342
347
|
])),
|
|
@@ -345,52 +350,53 @@ ${T.value}\r
|
|
|
345
350
|
]),
|
|
346
351
|
_: 1
|
|
347
352
|
}, 8, ["value"]),
|
|
348
|
-
|
|
349
|
-
value:
|
|
350
|
-
"onUpdate:value": $[2] || ($[2] = (B) =>
|
|
353
|
+
E(T, {
|
|
354
|
+
value: i.value,
|
|
355
|
+
"onUpdate:value": $[2] || ($[2] = (B) => i.value = B),
|
|
351
356
|
placeholder: "路径",
|
|
352
357
|
size: "small"
|
|
353
358
|
}, null, 8, ["value"])
|
|
354
359
|
])
|
|
355
360
|
]),
|
|
356
361
|
N("div", Yr, [
|
|
357
|
-
|
|
362
|
+
E(Ft, {
|
|
358
363
|
modelValue: p.value,
|
|
359
364
|
"onUpdate:modelValue": $[3] || ($[3] = (B) => p.value = B),
|
|
360
365
|
"add-button-text": "添加参数",
|
|
361
366
|
"show-preview": !0,
|
|
362
|
-
"preview-text": s.value +
|
|
367
|
+
"preview-text": s.value + i.value + A.value
|
|
363
368
|
}, null, 8, ["modelValue", "preview-text"])
|
|
364
369
|
])
|
|
365
370
|
]),
|
|
366
371
|
_: 1
|
|
367
372
|
}),
|
|
368
|
-
|
|
373
|
+
n.showAuth ? (M(), me(ye, {
|
|
374
|
+
key: 0,
|
|
369
375
|
title: "认证方案",
|
|
370
376
|
class: "form-section",
|
|
371
377
|
size: "small"
|
|
372
378
|
}, {
|
|
373
379
|
default: R(() => [
|
|
374
|
-
|
|
380
|
+
E(Bn, {
|
|
375
381
|
value: o.value,
|
|
376
382
|
"onUpdate:value": $[4] || ($[4] = (B) => o.value = B),
|
|
377
383
|
"button-style": "solid",
|
|
378
384
|
size: "small"
|
|
379
385
|
}, {
|
|
380
386
|
default: R(() => [
|
|
381
|
-
|
|
387
|
+
E(Le, { value: "none" }, {
|
|
382
388
|
default: R(() => $[19] || ($[19] = [
|
|
383
389
|
D("无认证")
|
|
384
390
|
])),
|
|
385
391
|
_: 1
|
|
386
392
|
}),
|
|
387
|
-
|
|
393
|
+
E(Le, { value: "Basic" }, {
|
|
388
394
|
default: R(() => $[20] || ($[20] = [
|
|
389
395
|
D("Basic认证")
|
|
390
396
|
])),
|
|
391
397
|
_: 1
|
|
392
398
|
}),
|
|
393
|
-
|
|
399
|
+
E(Le, { value: "Bearer" }, {
|
|
394
400
|
default: R(() => $[21] || ($[21] = [
|
|
395
401
|
D("Bearer认证")
|
|
396
402
|
])),
|
|
@@ -402,25 +408,25 @@ ${T.value}\r
|
|
|
402
408
|
o.value === "Basic" ? (M(), J("div", es, [
|
|
403
409
|
N("div", ts, [
|
|
404
410
|
$[22] || ($[22] = N("p", { class: "m-0 w-16" }, "用户名", -1)),
|
|
405
|
-
|
|
406
|
-
value:
|
|
407
|
-
"onUpdate:value": $[5] || ($[5] = (B) =>
|
|
411
|
+
E(T, {
|
|
412
|
+
value: l.value,
|
|
413
|
+
"onUpdate:value": $[5] || ($[5] = (B) => l.value = B),
|
|
408
414
|
size: "small"
|
|
409
415
|
}, null, 8, ["value"])
|
|
410
416
|
]),
|
|
411
417
|
N("div", ns, [
|
|
412
418
|
$[23] || ($[23] = N("p", { class: "m-0 w-16" }, "密码", -1)),
|
|
413
|
-
|
|
419
|
+
E(Rr, {
|
|
414
420
|
value: c.value,
|
|
415
421
|
"onUpdate:value": $[6] || ($[6] = (B) => c.value = B),
|
|
416
422
|
size: "small"
|
|
417
423
|
}, null, 8, ["value"])
|
|
418
424
|
])
|
|
419
|
-
])) :
|
|
425
|
+
])) : te("", !0),
|
|
420
426
|
o.value === "Bearer" ? (M(), J("div", as, [
|
|
421
427
|
N("div", rs, [
|
|
422
428
|
$[24] || ($[24] = N("p", { class: "m-0 w-16 h-full" }, "Token", -1)),
|
|
423
|
-
|
|
429
|
+
E(jt, {
|
|
424
430
|
value: u.value,
|
|
425
431
|
"onUpdate:value": $[7] || ($[7] = (B) => u.value = B),
|
|
426
432
|
size: "small",
|
|
@@ -429,17 +435,17 @@ ${T.value}\r
|
|
|
429
435
|
placeholder: "请输入Token"
|
|
430
436
|
}, null, 8, ["value"])
|
|
431
437
|
])
|
|
432
|
-
])) :
|
|
438
|
+
])) : te("", !0)
|
|
433
439
|
]),
|
|
434
440
|
_: 1
|
|
435
|
-
}),
|
|
436
|
-
|
|
441
|
+
})) : te("", !0),
|
|
442
|
+
E(ye, {
|
|
437
443
|
title: "请求头",
|
|
438
444
|
class: "form-section",
|
|
439
445
|
size: "small"
|
|
440
446
|
}, {
|
|
441
447
|
default: R(() => [
|
|
442
|
-
|
|
448
|
+
E(Ft, {
|
|
443
449
|
modelValue: d.value,
|
|
444
450
|
"onUpdate:modelValue": $[8] || ($[8] = (B) => d.value = B),
|
|
445
451
|
"add-button-text": "添加请求头",
|
|
@@ -448,14 +454,14 @@ ${T.value}\r
|
|
|
448
454
|
]),
|
|
449
455
|
_: 1
|
|
450
456
|
}),
|
|
451
|
-
r.value === "POST" || r.value === "PUT" ? (M(),
|
|
452
|
-
key:
|
|
457
|
+
r.value === "POST" || r.value === "PUT" ? (M(), me(ye, {
|
|
458
|
+
key: 1,
|
|
453
459
|
title: "请求体",
|
|
454
460
|
class: "form-section",
|
|
455
461
|
size: "small"
|
|
456
462
|
}, {
|
|
457
463
|
default: R(() => [
|
|
458
|
-
|
|
464
|
+
E(Bn, {
|
|
459
465
|
value: m.value,
|
|
460
466
|
"onUpdate:value": $[9] || ($[9] = (B) => m.value = B),
|
|
461
467
|
"button-style": "solid",
|
|
@@ -463,19 +469,19 @@ ${T.value}\r
|
|
|
463
469
|
class: "mb-1"
|
|
464
470
|
}, {
|
|
465
471
|
default: R(() => [
|
|
466
|
-
|
|
472
|
+
E(Le, { value: "application/json" }, {
|
|
467
473
|
default: R(() => $[25] || ($[25] = [
|
|
468
474
|
D("JSON")
|
|
469
475
|
])),
|
|
470
476
|
_: 1
|
|
471
477
|
}),
|
|
472
|
-
|
|
478
|
+
E(Le, { value: "multipart/form-data" }, {
|
|
473
479
|
default: R(() => $[26] || ($[26] = [
|
|
474
480
|
D("Form Data")
|
|
475
481
|
])),
|
|
476
482
|
_: 1
|
|
477
483
|
}),
|
|
478
|
-
|
|
484
|
+
E(Le, { value: "text/plain" }, {
|
|
479
485
|
default: R(() => $[27] || ($[27] = [
|
|
480
486
|
D("Raw")
|
|
481
487
|
])),
|
|
@@ -485,46 +491,46 @@ ${T.value}\r
|
|
|
485
491
|
_: 1
|
|
486
492
|
}, 8, ["value"]),
|
|
487
493
|
m.value === "application/json" ? (M(), J(_n, { key: 0 }, [
|
|
488
|
-
|
|
494
|
+
E(jt, {
|
|
489
495
|
value: _.value,
|
|
490
496
|
"onUpdate:value": $[10] || ($[10] = (B) => _.value = B),
|
|
491
497
|
rows: 6,
|
|
492
498
|
placeholder: "请输入 JSON 数据",
|
|
493
499
|
onInput: I
|
|
494
500
|
}, null, 8, ["value"]),
|
|
495
|
-
b.value ? (M(),
|
|
501
|
+
b.value ? (M(), me(Nr, {
|
|
496
502
|
key: 0,
|
|
497
503
|
type: "error",
|
|
498
504
|
message: b.value,
|
|
499
505
|
banner: "",
|
|
500
506
|
style: { "margin-bottom": "8px" }
|
|
501
|
-
}, null, 8, ["message"])) :
|
|
502
|
-
], 64)) :
|
|
503
|
-
m.value === "multipart/form-data" ? (M(),
|
|
507
|
+
}, null, 8, ["message"])) : te("", !0)
|
|
508
|
+
], 64)) : te("", !0),
|
|
509
|
+
m.value === "multipart/form-data" ? (M(), me(Ft, {
|
|
504
510
|
key: 1,
|
|
505
511
|
modelValue: f.value,
|
|
506
512
|
"onUpdate:modelValue": $[11] || ($[11] = (B) => f.value = B),
|
|
507
513
|
"add-button-text": "添加表单字段",
|
|
508
514
|
"show-preview": !1
|
|
509
|
-
}, null, 8, ["modelValue"])) :
|
|
510
|
-
m.value === "text/plain" ? (M(),
|
|
515
|
+
}, null, 8, ["modelValue"])) : te("", !0),
|
|
516
|
+
m.value === "text/plain" ? (M(), me(jt, {
|
|
511
517
|
key: 2,
|
|
512
518
|
value: g.value,
|
|
513
519
|
"onUpdate:value": $[12] || ($[12] = (B) => g.value = B),
|
|
514
520
|
rows: 6,
|
|
515
521
|
placeholder: "请输入原始数据"
|
|
516
|
-
}, null, 8, ["value"])) :
|
|
522
|
+
}, null, 8, ["value"])) : te("", !0),
|
|
517
523
|
N("pre", null, Ee(O.value), 1)
|
|
518
524
|
]),
|
|
519
525
|
_: 1
|
|
520
|
-
})) :
|
|
526
|
+
})) : te("", !0)
|
|
521
527
|
]),
|
|
522
528
|
_: 1
|
|
523
529
|
})
|
|
524
530
|
]);
|
|
525
531
|
};
|
|
526
532
|
}
|
|
527
|
-
}), au = /* @__PURE__ */ Rt(ss, [["__scopeId", "data-v-
|
|
533
|
+
}), au = /* @__PURE__ */ Rt(ss, [["__scopeId", "data-v-398ba576"]]);
|
|
528
534
|
async function os(t, e = "xhr") {
|
|
529
535
|
return e === "fetch" ? is(t) : ls(t);
|
|
530
536
|
}
|
|
@@ -550,8 +556,8 @@ async function is(t) {
|
|
|
550
556
|
break;
|
|
551
557
|
case "multipart/form-data":
|
|
552
558
|
const o = new FormData();
|
|
553
|
-
(s = t.body.formData) == null || s.forEach((
|
|
554
|
-
|
|
559
|
+
(s = t.body.formData) == null || s.forEach((i) => {
|
|
560
|
+
i.key && o.append(i.key, i.value);
|
|
555
561
|
}), r.body = o;
|
|
556
562
|
break;
|
|
557
563
|
case "text/plain":
|
|
@@ -559,24 +565,24 @@ async function is(t) {
|
|
|
559
565
|
break;
|
|
560
566
|
}
|
|
561
567
|
try {
|
|
562
|
-
const o = await fetch(n, r),
|
|
568
|
+
const o = await fetch(n, r), i = {};
|
|
563
569
|
o.headers.forEach((u, p) => {
|
|
564
|
-
|
|
570
|
+
i[p.toLowerCase()] = u;
|
|
565
571
|
});
|
|
566
|
-
let
|
|
567
|
-
if ((
|
|
572
|
+
let l = "";
|
|
573
|
+
if ((i["content-type"] || "").startsWith("application/json"))
|
|
568
574
|
try {
|
|
569
575
|
const u = await o.json();
|
|
570
|
-
|
|
576
|
+
l = JSON.stringify(u, null, 2);
|
|
571
577
|
} catch {
|
|
572
|
-
|
|
578
|
+
l = await o.text();
|
|
573
579
|
}
|
|
574
580
|
else
|
|
575
|
-
|
|
581
|
+
l = await o.text();
|
|
576
582
|
return {
|
|
577
583
|
status: o.status.toString(),
|
|
578
|
-
headers:
|
|
579
|
-
body:
|
|
584
|
+
headers: i,
|
|
585
|
+
body: l
|
|
580
586
|
};
|
|
581
587
|
} catch {
|
|
582
588
|
throw new Error("Request failed");
|
|
@@ -584,9 +590,9 @@ async function is(t) {
|
|
|
584
590
|
}
|
|
585
591
|
async function ls(t) {
|
|
586
592
|
return new Promise((e, n) => {
|
|
587
|
-
var
|
|
588
|
-
const a = new XMLHttpRequest(), r = t.auth.type === "Basic" ? t.auth.username : null, s = t.auth.type === "Basic" ? t.auth.password : null, o = t.params.filter((c) => !!c.key).map((c) => `${c.key}=${encodeURIComponent(c.value)}`).join("&"),
|
|
589
|
-
if (a.open(t.method,
|
|
593
|
+
var l;
|
|
594
|
+
const a = new XMLHttpRequest(), r = t.auth.type === "Basic" ? t.auth.username : null, s = t.auth.type === "Basic" ? t.auth.password : null, o = t.params.filter((c) => !!c.key).map((c) => `${c.key}=${encodeURIComponent(c.value)}`).join("&"), i = `${t.url}${t.path}${o ? "?" + o : ""}`;
|
|
595
|
+
if (a.open(t.method, i, !0, r, s), t.headers.forEach((c) => {
|
|
590
596
|
c.key && a.setRequestHeader(c.key, c.value);
|
|
591
597
|
}), t.auth.type === "Bearer" && t.auth.token && a.setRequestHeader("Authorization", `Bearer ${t.auth.token}`), t.method === "POST" || t.method === "PUT") {
|
|
592
598
|
let c = "";
|
|
@@ -596,7 +602,7 @@ async function ls(t) {
|
|
|
596
602
|
break;
|
|
597
603
|
case "multipart/form-data":
|
|
598
604
|
const u = new FormData();
|
|
599
|
-
(
|
|
605
|
+
(l = t.body.formData) == null || l.forEach((p) => {
|
|
600
606
|
p.key && u.append(p.key, p.value);
|
|
601
607
|
}), c = u;
|
|
602
608
|
break;
|
|
@@ -630,8 +636,8 @@ async function ls(t) {
|
|
|
630
636
|
function cs(t) {
|
|
631
637
|
const e = t.getAllResponseHeaders().trim().split(/[\r\n]+/), n = {};
|
|
632
638
|
return e.forEach(function(a) {
|
|
633
|
-
var
|
|
634
|
-
const r = a.split(": "), s = ((
|
|
639
|
+
var i;
|
|
640
|
+
const r = a.split(": "), s = ((i = r.shift()) == null ? void 0 : i.toLowerCase()) || "", o = r.join(": ");
|
|
635
641
|
n[s] = o;
|
|
636
642
|
}), n;
|
|
637
643
|
}
|
|
@@ -649,46 +655,46 @@ const us = { style: { display: "flex", "align-items": "center", gap: "8px", "mar
|
|
|
649
655
|
headers: {},
|
|
650
656
|
body: "",
|
|
651
657
|
timing: 0
|
|
652
|
-
}), r = L(""), s = (
|
|
653
|
-
const c = Number(
|
|
658
|
+
}), r = L(""), s = (l) => {
|
|
659
|
+
const c = Number(l);
|
|
654
660
|
return c >= 200 && c < 300 ? "success" : c >= 300 && c < 400 ? "warning" : c >= 400 && c < 500 || c >= 500 ? "error" : "default";
|
|
655
|
-
}, o = (
|
|
661
|
+
}, o = (l) => l instanceof Error ? l.message : "请求失败", i = async () => {
|
|
656
662
|
r.value = "";
|
|
657
|
-
const
|
|
663
|
+
const l = Date.now();
|
|
658
664
|
try {
|
|
659
|
-
a.value = await os(e.modelValue, n.value), a.value.timing = Date.now() -
|
|
665
|
+
a.value = await os(e.modelValue, n.value), a.value.timing = Date.now() - l;
|
|
660
666
|
} catch (c) {
|
|
661
667
|
r.value = o(c), a.value = {
|
|
662
668
|
status: "Error",
|
|
663
669
|
headers: {},
|
|
664
670
|
body: c instanceof Error ? c.message : "Request failed",
|
|
665
|
-
timing: Date.now() -
|
|
671
|
+
timing: Date.now() - l
|
|
666
672
|
};
|
|
667
673
|
}
|
|
668
674
|
};
|
|
669
|
-
return (
|
|
675
|
+
return (l, c) => {
|
|
670
676
|
const u = j("a-radio-button"), p = j("a-radio-group"), d = j("a-button"), f = j("a-alert"), m = j("a-tag"), _ = j("a-textarea"), g = j("a-card");
|
|
671
|
-
return M(),
|
|
677
|
+
return M(), me(g, {
|
|
672
678
|
title: "响应",
|
|
673
679
|
class: "form-section",
|
|
674
680
|
size: "small"
|
|
675
681
|
}, {
|
|
676
682
|
default: R(() => [
|
|
677
683
|
N("div", us, [
|
|
678
|
-
|
|
684
|
+
E(p, {
|
|
679
685
|
value: n.value,
|
|
680
686
|
"onUpdate:value": c[0] || (c[0] = (b) => n.value = b),
|
|
681
687
|
"button-style": "solid",
|
|
682
688
|
size: "small"
|
|
683
689
|
}, {
|
|
684
690
|
default: R(() => [
|
|
685
|
-
|
|
691
|
+
E(u, { value: "xhr" }, {
|
|
686
692
|
default: R(() => c[2] || (c[2] = [
|
|
687
693
|
D("XMLHttpRequest")
|
|
688
694
|
])),
|
|
689
695
|
_: 1
|
|
690
696
|
}),
|
|
691
|
-
|
|
697
|
+
E(u, { value: "fetch" }, {
|
|
692
698
|
default: R(() => c[3] || (c[3] = [
|
|
693
699
|
D("Fetch")
|
|
694
700
|
])),
|
|
@@ -697,9 +703,9 @@ const us = { style: { display: "flex", "align-items": "center", gap: "8px", "mar
|
|
|
697
703
|
]),
|
|
698
704
|
_: 1
|
|
699
705
|
}, 8, ["value"]),
|
|
700
|
-
|
|
706
|
+
E(d, {
|
|
701
707
|
type: "primary",
|
|
702
|
-
onClick:
|
|
708
|
+
onClick: i,
|
|
703
709
|
size: "small"
|
|
704
710
|
}, {
|
|
705
711
|
default: R(() => c[4] || (c[4] = [
|
|
@@ -708,19 +714,19 @@ const us = { style: { display: "flex", "align-items": "center", gap: "8px", "mar
|
|
|
708
714
|
_: 1
|
|
709
715
|
})
|
|
710
716
|
]),
|
|
711
|
-
r.value ? (M(),
|
|
717
|
+
r.value ? (M(), me(f, {
|
|
712
718
|
key: 0,
|
|
713
719
|
message: r.value,
|
|
714
720
|
type: "error",
|
|
715
721
|
"show-icon": "",
|
|
716
722
|
style: { "margin-bottom": "8px" }
|
|
717
|
-
}, null, 8, ["message"])) :
|
|
723
|
+
}, null, 8, ["message"])) : te("", !0),
|
|
718
724
|
N("div", ps, [
|
|
719
725
|
c[7] || (c[7] = N("div", { class: "text-sm font-bold" }, "基本信息", -1)),
|
|
720
726
|
N("div", ds, [
|
|
721
727
|
N("div", null, [
|
|
722
728
|
c[5] || (c[5] = N("span", null, "状态码:", -1)),
|
|
723
|
-
|
|
729
|
+
E(m, {
|
|
724
730
|
color: s(a.value.status)
|
|
725
731
|
}, {
|
|
726
732
|
default: R(() => [
|
|
@@ -744,7 +750,7 @@ const us = { style: { display: "flex", "align-items": "center", gap: "8px", "mar
|
|
|
744
750
|
])
|
|
745
751
|
])) : (M(), J("p", gs, "无响应头")),
|
|
746
752
|
c[9] || (c[9] = N("div", { class: "text-sm font-bold" }, "响应体", -1)),
|
|
747
|
-
|
|
753
|
+
E(_, {
|
|
748
754
|
value: a.value.body,
|
|
749
755
|
"onUpdate:value": c[1] || (c[1] = (b) => a.value.body = b),
|
|
750
756
|
rows: 5,
|
|
@@ -798,18 +804,18 @@ var Dt = /\$(\d+)|\${(\d+):\/(downcase|upcase)}/g, ct = class {
|
|
|
798
804
|
}
|
|
799
805
|
static replaceCaptures(t, e, n) {
|
|
800
806
|
return t.replace(Dt, (a, r, s, o) => {
|
|
801
|
-
let
|
|
802
|
-
if (
|
|
803
|
-
let
|
|
804
|
-
for (;
|
|
805
|
-
|
|
807
|
+
let i = n[parseInt(r || s, 10)];
|
|
808
|
+
if (i) {
|
|
809
|
+
let l = e.substring(i.start, i.end);
|
|
810
|
+
for (; l[0] === "."; )
|
|
811
|
+
l = l.substring(1);
|
|
806
812
|
switch (o) {
|
|
807
813
|
case "downcase":
|
|
808
|
-
return
|
|
814
|
+
return l.toLowerCase();
|
|
809
815
|
case "upcase":
|
|
810
|
-
return
|
|
816
|
+
return l.toUpperCase();
|
|
811
817
|
default:
|
|
812
|
-
return
|
|
818
|
+
return l;
|
|
813
819
|
}
|
|
814
820
|
} else
|
|
815
821
|
return a;
|
|
@@ -963,28 +969,28 @@ function vs(t) {
|
|
|
963
969
|
let o = e[r];
|
|
964
970
|
if (!o.settings)
|
|
965
971
|
continue;
|
|
966
|
-
let
|
|
972
|
+
let i;
|
|
967
973
|
if (typeof o.scope == "string") {
|
|
968
974
|
let p = o.scope;
|
|
969
|
-
p = p.replace(/^[,]+/, ""), p = p.replace(/[,]+$/, ""),
|
|
970
|
-
} else Array.isArray(o.scope) ?
|
|
971
|
-
let
|
|
975
|
+
p = p.replace(/^[,]+/, ""), p = p.replace(/[,]+$/, ""), i = p.split(",");
|
|
976
|
+
} else Array.isArray(o.scope) ? i = o.scope : i = [""];
|
|
977
|
+
let l = -1;
|
|
972
978
|
if (typeof o.settings.fontStyle == "string") {
|
|
973
|
-
|
|
979
|
+
l = 0;
|
|
974
980
|
let p = o.settings.fontStyle.split(" ");
|
|
975
981
|
for (let d = 0, f = p.length; d < f; d++)
|
|
976
982
|
switch (p[d]) {
|
|
977
983
|
case "italic":
|
|
978
|
-
|
|
984
|
+
l = l | 1;
|
|
979
985
|
break;
|
|
980
986
|
case "bold":
|
|
981
|
-
|
|
987
|
+
l = l | 2;
|
|
982
988
|
break;
|
|
983
989
|
case "underline":
|
|
984
|
-
|
|
990
|
+
l = l | 4;
|
|
985
991
|
break;
|
|
986
992
|
case "strikethrough":
|
|
987
|
-
|
|
993
|
+
l = l | 8;
|
|
988
994
|
break;
|
|
989
995
|
}
|
|
990
996
|
}
|
|
@@ -992,13 +998,13 @@ function vs(t) {
|
|
|
992
998
|
typeof o.settings.foreground == "string" && jn(o.settings.foreground) && (c = o.settings.foreground);
|
|
993
999
|
let u = null;
|
|
994
1000
|
typeof o.settings.background == "string" && jn(o.settings.background) && (u = o.settings.background);
|
|
995
|
-
for (let p = 0, d =
|
|
996
|
-
let m =
|
|
1001
|
+
for (let p = 0, d = i.length; p < d; p++) {
|
|
1002
|
+
let m = i[p].trim().split(" "), _ = m[m.length - 1], g = null;
|
|
997
1003
|
m.length > 1 && (g = m.slice(0, m.length - 1), g.reverse()), n[a++] = new Cs(
|
|
998
1004
|
_,
|
|
999
1005
|
g,
|
|
1000
1006
|
r,
|
|
1001
|
-
|
|
1007
|
+
l,
|
|
1002
1008
|
c,
|
|
1003
1009
|
u
|
|
1004
1010
|
);
|
|
@@ -1012,21 +1018,21 @@ var Cs = class {
|
|
|
1012
1018
|
}
|
|
1013
1019
|
}, Z = /* @__PURE__ */ ((t) => (t[t.NotSet = -1] = "NotSet", t[t.None = 0] = "None", t[t.Italic = 1] = "Italic", t[t.Bold = 2] = "Bold", t[t.Underline = 4] = "Underline", t[t.Strikethrough = 8] = "Strikethrough", t))(Z || {});
|
|
1014
1020
|
function xs(t, e) {
|
|
1015
|
-
t.sort((
|
|
1016
|
-
let u = Ea(
|
|
1017
|
-
return u !== 0 || (u = Aa(
|
|
1021
|
+
t.sort((l, c) => {
|
|
1022
|
+
let u = Ea(l.scope, c.scope);
|
|
1023
|
+
return u !== 0 || (u = Aa(l.parentScopes, c.parentScopes), u !== 0) ? u : l.index - c.index;
|
|
1018
1024
|
});
|
|
1019
1025
|
let n = 0, a = "#000000", r = "#ffffff";
|
|
1020
1026
|
for (; t.length >= 1 && t[0].scope === ""; ) {
|
|
1021
|
-
let
|
|
1022
|
-
|
|
1027
|
+
let l = t.shift();
|
|
1028
|
+
l.fontStyle !== -1 && (n = l.fontStyle), l.foreground !== null && (a = l.foreground), l.background !== null && (r = l.background);
|
|
1023
1029
|
}
|
|
1024
|
-
let s = new Ss(e), o = new Na(n, s.getId(a), s.getId(r)),
|
|
1025
|
-
for (let
|
|
1026
|
-
let u = t[
|
|
1027
|
-
|
|
1030
|
+
let s = new Ss(e), o = new Na(n, s.getId(a), s.getId(r)), i = new As(new tn(0, null, -1, 0, 0), []);
|
|
1031
|
+
for (let l = 0, c = t.length; l < c; l++) {
|
|
1032
|
+
let u = t[l];
|
|
1033
|
+
i.insert(0, u.scope, u.parentScopes, u.fontStyle, s.getId(u.foreground), s.getId(u.background));
|
|
1028
1034
|
}
|
|
1029
|
-
return new yt(s, o,
|
|
1035
|
+
return new yt(s, o, i);
|
|
1030
1036
|
}
|
|
1031
1037
|
var Ss = class {
|
|
1032
1038
|
constructor(t) {
|
|
@@ -1107,20 +1113,20 @@ var Ss = class {
|
|
|
1107
1113
|
this._doInsertHere(e, a, r, s, o);
|
|
1108
1114
|
return;
|
|
1109
1115
|
}
|
|
1110
|
-
let
|
|
1111
|
-
|
|
1116
|
+
let i = n.indexOf("."), l, c;
|
|
1117
|
+
i === -1 ? (l = n, c = "") : (l = n.substring(0, i), c = n.substring(i + 1));
|
|
1112
1118
|
let u;
|
|
1113
|
-
this._children.hasOwnProperty(
|
|
1119
|
+
this._children.hasOwnProperty(l) ? u = this._children[l] : (u = new nn(this._mainRule.clone(), tn.cloneArr(this._rulesWithParentScopes)), this._children[l] = u), u.insert(e + 1, c, a, r, s, o);
|
|
1114
1120
|
}
|
|
1115
1121
|
_doInsertHere(e, n, a, r, s) {
|
|
1116
1122
|
if (n === null) {
|
|
1117
1123
|
this._mainRule.acceptOverwrite(e, a, r, s);
|
|
1118
1124
|
return;
|
|
1119
1125
|
}
|
|
1120
|
-
for (let o = 0,
|
|
1121
|
-
let
|
|
1122
|
-
if (Aa(
|
|
1123
|
-
|
|
1126
|
+
for (let o = 0, i = this._rulesWithParentScopes.length; o < i; o++) {
|
|
1127
|
+
let l = this._rulesWithParentScopes[o];
|
|
1128
|
+
if (Aa(l.parentScopes, n) === 0) {
|
|
1129
|
+
l.acceptOverwrite(e, a, r, s);
|
|
1124
1130
|
return;
|
|
1125
1131
|
}
|
|
1126
1132
|
}
|
|
@@ -1162,23 +1168,23 @@ var Ss = class {
|
|
|
1162
1168
|
* Updates the fields in `metadata`.
|
|
1163
1169
|
* A value of `0`, `NotSet` or `null` indicates that the corresponding field should be left as is.
|
|
1164
1170
|
*/
|
|
1165
|
-
static set(e, n, a, r, s, o,
|
|
1166
|
-
let
|
|
1167
|
-
return n !== 0 && (
|
|
1171
|
+
static set(e, n, a, r, s, o, i) {
|
|
1172
|
+
let l = ee.getLanguageId(e), c = ee.getTokenType(e), u = ee.containsBalancedBrackets(e) ? 1 : 0, p = ee.getFontStyle(e), d = ee.getForeground(e), f = ee.getBackground(e);
|
|
1173
|
+
return n !== 0 && (l = n), a !== 8 && (c = a), r !== null && (u = r ? 1 : 0), s !== -1 && (p = s), o !== 0 && (d = o), i !== 0 && (f = i), (l << 0 | c << 8 | u << 10 | p << 11 | d << 15 | f << 24) >>> 0;
|
|
1168
1174
|
}
|
|
1169
1175
|
};
|
|
1170
1176
|
function _t(t, e) {
|
|
1171
1177
|
const n = [], a = Is(t);
|
|
1172
1178
|
let r = a.next();
|
|
1173
1179
|
for (; r !== null; ) {
|
|
1174
|
-
let
|
|
1180
|
+
let l = 0;
|
|
1175
1181
|
if (r.length === 2 && r.charAt(1) === ":") {
|
|
1176
1182
|
switch (r.charAt(0)) {
|
|
1177
1183
|
case "R":
|
|
1178
|
-
|
|
1184
|
+
l = 1;
|
|
1179
1185
|
break;
|
|
1180
1186
|
case "L":
|
|
1181
|
-
|
|
1187
|
+
l = -1;
|
|
1182
1188
|
break;
|
|
1183
1189
|
default:
|
|
1184
1190
|
console.log(`Unknown priority ${r} in scope selector`);
|
|
@@ -1186,7 +1192,7 @@ function _t(t, e) {
|
|
|
1186
1192
|
r = a.next();
|
|
1187
1193
|
}
|
|
1188
1194
|
let c = o();
|
|
1189
|
-
if (n.push({ matcher: c, priority:
|
|
1195
|
+
if (n.push({ matcher: c, priority: l }), r !== ",")
|
|
1190
1196
|
break;
|
|
1191
1197
|
r = a.next();
|
|
1192
1198
|
}
|
|
@@ -1194,40 +1200,40 @@ function _t(t, e) {
|
|
|
1194
1200
|
function s() {
|
|
1195
1201
|
if (r === "-") {
|
|
1196
1202
|
r = a.next();
|
|
1197
|
-
const
|
|
1198
|
-
return (c) => !!
|
|
1203
|
+
const l = s();
|
|
1204
|
+
return (c) => !!l && !l(c);
|
|
1199
1205
|
}
|
|
1200
1206
|
if (r === "(") {
|
|
1201
1207
|
r = a.next();
|
|
1202
|
-
const
|
|
1203
|
-
return r === ")" && (r = a.next()),
|
|
1208
|
+
const l = i();
|
|
1209
|
+
return r === ")" && (r = a.next()), l;
|
|
1204
1210
|
}
|
|
1205
1211
|
if (Mn(r)) {
|
|
1206
|
-
const
|
|
1212
|
+
const l = [];
|
|
1207
1213
|
do
|
|
1208
|
-
|
|
1214
|
+
l.push(r), r = a.next();
|
|
1209
1215
|
while (Mn(r));
|
|
1210
|
-
return (c) => e(
|
|
1216
|
+
return (c) => e(l, c);
|
|
1211
1217
|
}
|
|
1212
1218
|
return null;
|
|
1213
1219
|
}
|
|
1214
1220
|
function o() {
|
|
1215
|
-
const
|
|
1221
|
+
const l = [];
|
|
1216
1222
|
let c = s();
|
|
1217
1223
|
for (; c; )
|
|
1218
|
-
|
|
1219
|
-
return (u) =>
|
|
1224
|
+
l.push(c), c = s();
|
|
1225
|
+
return (u) => l.every((p) => p(u));
|
|
1220
1226
|
}
|
|
1221
|
-
function
|
|
1222
|
-
const
|
|
1227
|
+
function i() {
|
|
1228
|
+
const l = [];
|
|
1223
1229
|
let c = o();
|
|
1224
|
-
for (; c && (
|
|
1230
|
+
for (; c && (l.push(c), r === "|" || r === ","); ) {
|
|
1225
1231
|
do
|
|
1226
1232
|
r = a.next();
|
|
1227
1233
|
while (r === "|" || r === ",");
|
|
1228
1234
|
c = o();
|
|
1229
1235
|
}
|
|
1230
|
-
return (u) =>
|
|
1236
|
+
return (u) => l.some((p) => p(u));
|
|
1231
1237
|
}
|
|
1232
1238
|
}
|
|
1233
1239
|
function Mn(t) {
|
|
@@ -1314,8 +1320,8 @@ function Bs(t, e, n, a) {
|
|
|
1314
1320
|
);
|
|
1315
1321
|
const o = n.injections(t.scopeName);
|
|
1316
1322
|
if (o)
|
|
1317
|
-
for (const
|
|
1318
|
-
a.add(new Ye(
|
|
1323
|
+
for (const i of o)
|
|
1324
|
+
a.add(new Ye(i));
|
|
1319
1325
|
}
|
|
1320
1326
|
function an(t, e, n) {
|
|
1321
1327
|
if (e.repository && e.repository[t]) {
|
|
@@ -1357,10 +1363,10 @@ function $t(t, e, n) {
|
|
|
1357
1363
|
break;
|
|
1358
1364
|
case 3:
|
|
1359
1365
|
case 4:
|
|
1360
|
-
const
|
|
1361
|
-
if (
|
|
1362
|
-
const
|
|
1363
|
-
o.kind === 4 ? an(o.ruleName,
|
|
1366
|
+
const i = o.scopeName === e.selfGrammar.scopeName ? e.selfGrammar : o.scopeName === e.baseGrammar.scopeName ? e.baseGrammar : void 0;
|
|
1367
|
+
if (i) {
|
|
1368
|
+
const l = { baseGrammar: e.baseGrammar, selfGrammar: i, repository: r };
|
|
1369
|
+
o.kind === 4 ? an(o.ruleName, l, n) : gt(l, n);
|
|
1364
1370
|
} else
|
|
1365
1371
|
o.kind === 4 ? n.add(new Rs(o.scopeName, o.ruleName)) : n.add(new Ye(o.scopeName));
|
|
1366
1372
|
break;
|
|
@@ -1495,7 +1501,7 @@ var ot = class {
|
|
|
1495
1501
|
return this._cachedCompiledPatterns || (this._cachedCompiledPatterns = new tt(), this.collectPatterns(e, this._cachedCompiledPatterns)), this._cachedCompiledPatterns;
|
|
1496
1502
|
}
|
|
1497
1503
|
}, rn = class extends ot {
|
|
1498
|
-
constructor(e, n, a, r, s, o,
|
|
1504
|
+
constructor(e, n, a, r, s, o, i, l, c, u) {
|
|
1499
1505
|
super(e, n, a, r);
|
|
1500
1506
|
h(this, "_begin");
|
|
1501
1507
|
h(this, "beginCaptures");
|
|
@@ -1506,7 +1512,7 @@ var ot = class {
|
|
|
1506
1512
|
h(this, "hasMissingPatterns");
|
|
1507
1513
|
h(this, "patterns");
|
|
1508
1514
|
h(this, "_cachedCompiledPatterns");
|
|
1509
|
-
this._begin = new et(s, this.id), this.beginCaptures = o, this._end = new et(
|
|
1515
|
+
this._begin = new et(s, this.id), this.beginCaptures = o, this._end = new et(i || "", -1), this.endHasBackReferences = this._end.hasBackReferences, this.endCaptures = l, this.applyEndPatternLast = c || !1, this.patterns = u.patterns, this.hasMissingPatterns = u.hasMissingPatterns, this._cachedCompiledPatterns = null;
|
|
1510
1516
|
}
|
|
1511
1517
|
dispose() {
|
|
1512
1518
|
this._cachedCompiledPatterns && (this._cachedCompiledPatterns.dispose(), this._cachedCompiledPatterns = null);
|
|
@@ -1539,7 +1545,7 @@ var ot = class {
|
|
|
1539
1545
|
return this._end.hasBackReferences && (this.applyEndPatternLast ? this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length() - 1, n) : this._cachedCompiledPatterns.setSource(0, n)), this._cachedCompiledPatterns;
|
|
1540
1546
|
}
|
|
1541
1547
|
}, wt = class extends ot {
|
|
1542
|
-
constructor(e, n, a, r, s, o,
|
|
1548
|
+
constructor(e, n, a, r, s, o, i, l, c) {
|
|
1543
1549
|
super(e, n, a, r);
|
|
1544
1550
|
h(this, "_begin");
|
|
1545
1551
|
h(this, "beginCaptures");
|
|
@@ -1550,7 +1556,7 @@ var ot = class {
|
|
|
1550
1556
|
h(this, "patterns");
|
|
1551
1557
|
h(this, "_cachedCompiledPatterns");
|
|
1552
1558
|
h(this, "_cachedCompiledWhilePatterns");
|
|
1553
|
-
this._begin = new et(s, this.id), this.beginCaptures = o, this.whileCaptures =
|
|
1559
|
+
this._begin = new et(s, this.id), this.beginCaptures = o, this.whileCaptures = l, this._while = new et(i, La), this.whileHasBackReferences = this._while.hasBackReferences, this.patterns = c.patterns, this.hasMissingPatterns = c.hasMissingPatterns, this._cachedCompiledPatterns = null, this._cachedCompiledWhilePatterns = null;
|
|
1554
1560
|
}
|
|
1555
1561
|
dispose() {
|
|
1556
1562
|
this._cachedCompiledPatterns && (this._cachedCompiledPatterns.dispose(), this._cachedCompiledPatterns = null), this._cachedCompiledWhilePatterns && (this._cachedCompiledWhilePatterns.dispose(), this._cachedCompiledWhilePatterns = null);
|
|
@@ -1646,17 +1652,17 @@ var ot = class {
|
|
|
1646
1652
|
for (const o in e) {
|
|
1647
1653
|
if (o === "$vscodeTextmateLocation")
|
|
1648
1654
|
continue;
|
|
1649
|
-
const
|
|
1650
|
-
|
|
1655
|
+
const i = parseInt(o, 10);
|
|
1656
|
+
i > s && (s = i);
|
|
1651
1657
|
}
|
|
1652
1658
|
for (let o = 0; o <= s; o++)
|
|
1653
1659
|
r[o] = null;
|
|
1654
1660
|
for (const o in e) {
|
|
1655
1661
|
if (o === "$vscodeTextmateLocation")
|
|
1656
1662
|
continue;
|
|
1657
|
-
const
|
|
1658
|
-
let
|
|
1659
|
-
e[o].patterns && (
|
|
1663
|
+
const i = parseInt(o, 10);
|
|
1664
|
+
let l = 0;
|
|
1665
|
+
e[o].patterns && (l = V.getCompiledRuleId(e[o], n, a)), r[i] = V.createCaptureRule(n, e[o].$vscodeTextmateLocation, e[o].name, e[o].contentName, l);
|
|
1660
1666
|
}
|
|
1661
1667
|
}
|
|
1662
1668
|
return r;
|
|
@@ -1665,18 +1671,18 @@ var ot = class {
|
|
|
1665
1671
|
let r = [];
|
|
1666
1672
|
if (e)
|
|
1667
1673
|
for (let s = 0, o = e.length; s < o; s++) {
|
|
1668
|
-
const
|
|
1669
|
-
let
|
|
1670
|
-
if (
|
|
1671
|
-
const c = Ta(
|
|
1674
|
+
const i = e[s];
|
|
1675
|
+
let l = -1;
|
|
1676
|
+
if (i.include) {
|
|
1677
|
+
const c = Ta(i.include);
|
|
1672
1678
|
switch (c.kind) {
|
|
1673
1679
|
case 0:
|
|
1674
1680
|
case 1:
|
|
1675
|
-
|
|
1681
|
+
l = V.getCompiledRuleId(a[i.include], n, a);
|
|
1676
1682
|
break;
|
|
1677
1683
|
case 2:
|
|
1678
1684
|
let u = a[c.ruleName];
|
|
1679
|
-
u && (
|
|
1685
|
+
u && (l = V.getCompiledRuleId(u, n, a));
|
|
1680
1686
|
break;
|
|
1681
1687
|
case 3:
|
|
1682
1688
|
case 4:
|
|
@@ -1684,19 +1690,19 @@ var ot = class {
|
|
|
1684
1690
|
if (f)
|
|
1685
1691
|
if (d) {
|
|
1686
1692
|
let m = f.repository[d];
|
|
1687
|
-
m && (
|
|
1693
|
+
m && (l = V.getCompiledRuleId(m, n, f.repository));
|
|
1688
1694
|
} else
|
|
1689
|
-
|
|
1695
|
+
l = V.getCompiledRuleId(f.repository.$self, n, f.repository);
|
|
1690
1696
|
break;
|
|
1691
1697
|
}
|
|
1692
1698
|
} else
|
|
1693
|
-
|
|
1694
|
-
if (
|
|
1695
|
-
const c = n.getRule(
|
|
1699
|
+
l = V.getCompiledRuleId(i, n, a);
|
|
1700
|
+
if (l !== -1) {
|
|
1701
|
+
const c = n.getRule(l);
|
|
1696
1702
|
let u = !1;
|
|
1697
1703
|
if ((c instanceof Gn || c instanceof rn || c instanceof wt) && c.hasMissingPatterns && c.patterns.length === 0 && (u = !0), u)
|
|
1698
1704
|
continue;
|
|
1699
|
-
r.push(
|
|
1705
|
+
r.push(l);
|
|
1700
1706
|
}
|
|
1701
1707
|
}
|
|
1702
1708
|
return {
|
|
@@ -1714,10 +1720,10 @@ var ot = class {
|
|
|
1714
1720
|
if (e && typeof e == "string") {
|
|
1715
1721
|
const a = e.length;
|
|
1716
1722
|
let r = 0, s = [], o = !1;
|
|
1717
|
-
for (let
|
|
1718
|
-
if (e.charAt(
|
|
1719
|
-
const c = e.charAt(
|
|
1720
|
-
c === "z" ? (s.push(e.substring(r,
|
|
1723
|
+
for (let i = 0; i < a; i++)
|
|
1724
|
+
if (e.charAt(i) === "\\" && i + 1 < a) {
|
|
1725
|
+
const c = e.charAt(i + 1);
|
|
1726
|
+
c === "z" ? (s.push(e.substring(r, i)), s.push("$(?!\\n)(?<!\\n)"), r = i + 2) : (c === "A" || c === "G") && (o = !0), i++;
|
|
1721
1727
|
}
|
|
1722
1728
|
this.hasAnchor = o, r === 0 ? this.source = e : (s.push(e.substring(r, a)), this.source = s.join(""));
|
|
1723
1729
|
} else
|
|
@@ -1739,9 +1745,9 @@ var ot = class {
|
|
|
1739
1745
|
_buildAnchorCache() {
|
|
1740
1746
|
if (typeof this.source != "string")
|
|
1741
1747
|
throw new Error("This method should only be called if the source is a string");
|
|
1742
|
-
let e = [], n = [], a = [], r = [], s, o,
|
|
1748
|
+
let e = [], n = [], a = [], r = [], s, o, i, l;
|
|
1743
1749
|
for (s = 0, o = this.source.length; s < o; s++)
|
|
1744
|
-
|
|
1750
|
+
i = this.source.charAt(s), e[s] = i, n[s] = i, a[s] = i, r[s] = i, i === "\\" && s + 1 < o && (l = this.source.charAt(s + 1), l === "A" ? (e[s + 1] = "", n[s + 1] = "", a[s + 1] = "A", r[s + 1] = "A") : l === "G" ? (e[s + 1] = "", n[s + 1] = "G", a[s + 1] = "", r[s + 1] = "G") : (e[s + 1] = l, n[s + 1] = l, a[s + 1] = l, r[s + 1] = l), s++);
|
|
1745
1751
|
return {
|
|
1746
1752
|
A0_G0: e.join(""),
|
|
1747
1753
|
A0_G1: n.join(""),
|
|
@@ -1823,7 +1829,7 @@ var ot = class {
|
|
|
1823
1829
|
constructor(t, e) {
|
|
1824
1830
|
this.languageId = t, this.tokenType = e;
|
|
1825
1831
|
}
|
|
1826
|
-
},
|
|
1832
|
+
}, he, zs = (he = class {
|
|
1827
1833
|
constructor(e, n) {
|
|
1828
1834
|
h(this, "_defaultAttributes");
|
|
1829
1835
|
h(this, "_embeddedLanguagesMatcher");
|
|
@@ -1841,7 +1847,7 @@ var ot = class {
|
|
|
1841
1847
|
return this._defaultAttributes;
|
|
1842
1848
|
}
|
|
1843
1849
|
getBasicScopeAttributes(e) {
|
|
1844
|
-
return e === null ?
|
|
1850
|
+
return e === null ? he._NULL_SCOPE_METADATA : this._getBasicScopeAttributes.get(e);
|
|
1845
1851
|
}
|
|
1846
1852
|
/**
|
|
1847
1853
|
* Given a produced TM scope, return the language that token describes or null if unknown.
|
|
@@ -1851,7 +1857,7 @@ var ot = class {
|
|
|
1851
1857
|
return this._embeddedLanguagesMatcher.match(e) || 0;
|
|
1852
1858
|
}
|
|
1853
1859
|
_toStandardTokenType(e) {
|
|
1854
|
-
const n = e.match(
|
|
1860
|
+
const n = e.match(he.STANDARD_TOKEN_TYPE_REGEXP);
|
|
1855
1861
|
if (!n)
|
|
1856
1862
|
return 8;
|
|
1857
1863
|
switch (n[1]) {
|
|
@@ -1866,7 +1872,7 @@ var ot = class {
|
|
|
1866
1872
|
}
|
|
1867
1873
|
throw new Error("Unexpected match for standard token type!");
|
|
1868
1874
|
}
|
|
1869
|
-
}, h(
|
|
1875
|
+
}, h(he, "_NULL_SCOPE_METADATA", new zt(0, 0)), h(he, "STANDARD_TOKEN_TYPE_REGEXP", /\b(comment|string|regex|meta\.embedded)\b/), he), qs = class {
|
|
1870
1876
|
constructor(t) {
|
|
1871
1877
|
h(this, "values");
|
|
1872
1878
|
h(this, "scopesRegExp");
|
|
@@ -1897,11 +1903,11 @@ var Dn = class {
|
|
|
1897
1903
|
this.stack = t, this.stoppedEarly = e;
|
|
1898
1904
|
}
|
|
1899
1905
|
};
|
|
1900
|
-
function Oa(t, e, n, a, r, s, o,
|
|
1901
|
-
const
|
|
1906
|
+
function Oa(t, e, n, a, r, s, o, i) {
|
|
1907
|
+
const l = e.content.length;
|
|
1902
1908
|
let c = !1, u = -1;
|
|
1903
1909
|
if (o) {
|
|
1904
|
-
const f =
|
|
1910
|
+
const f = Hs(
|
|
1905
1911
|
t,
|
|
1906
1912
|
e,
|
|
1907
1913
|
n,
|
|
@@ -1913,13 +1919,13 @@ function Oa(t, e, n, a, r, s, o, l) {
|
|
|
1913
1919
|
}
|
|
1914
1920
|
const p = Date.now();
|
|
1915
1921
|
for (; !c; ) {
|
|
1916
|
-
if (
|
|
1922
|
+
if (i !== 0 && Date.now() - p > i)
|
|
1917
1923
|
return new Dn(r, !0);
|
|
1918
1924
|
d();
|
|
1919
1925
|
}
|
|
1920
1926
|
return new Dn(r, !1);
|
|
1921
1927
|
function d() {
|
|
1922
|
-
const f =
|
|
1928
|
+
const f = Ws(
|
|
1923
1929
|
t,
|
|
1924
1930
|
e,
|
|
1925
1931
|
n,
|
|
@@ -1928,7 +1934,7 @@ function Oa(t, e, n, a, r, s, o, l) {
|
|
|
1928
1934
|
u
|
|
1929
1935
|
);
|
|
1930
1936
|
if (!f) {
|
|
1931
|
-
s.produce(r,
|
|
1937
|
+
s.produce(r, l), c = !0;
|
|
1932
1938
|
return;
|
|
1933
1939
|
}
|
|
1934
1940
|
const m = f.captureIndices, _ = f.matchedRuleId, g = m && m.length > 0 ? m[0].end > a : !1;
|
|
@@ -1945,7 +1951,7 @@ function Oa(t, e, n, a, r, s, o, l) {
|
|
|
1945
1951
|
), s.produce(r, m[0].end);
|
|
1946
1952
|
const w = r;
|
|
1947
1953
|
if (r = r.parent, u = w.getAnchorPos(), !g && w.getEnterPos() === a) {
|
|
1948
|
-
r = w, s.produce(r,
|
|
1954
|
+
r = w, s.produce(r, l), c = !0;
|
|
1949
1955
|
return;
|
|
1950
1956
|
}
|
|
1951
1957
|
} else {
|
|
@@ -1959,7 +1965,7 @@ function Oa(t, e, n, a, r, s, o, l) {
|
|
|
1959
1965
|
_,
|
|
1960
1966
|
a,
|
|
1961
1967
|
u,
|
|
1962
|
-
m[0].end ===
|
|
1968
|
+
m[0].end === l,
|
|
1963
1969
|
null,
|
|
1964
1970
|
v,
|
|
1965
1971
|
v
|
|
@@ -1987,7 +1993,7 @@ function Oa(t, e, n, a, r, s, o, l) {
|
|
|
1987
1993
|
m
|
|
1988
1994
|
)
|
|
1989
1995
|
)), !g && w.hasSameRuleAs(r)) {
|
|
1990
|
-
r = r.pop(), s.produce(r,
|
|
1996
|
+
r = r.pop(), s.produce(r, l), c = !0;
|
|
1991
1997
|
return;
|
|
1992
1998
|
}
|
|
1993
1999
|
} else if (b instanceof wt) {
|
|
@@ -2014,7 +2020,7 @@ function Oa(t, e, n, a, r, s, o, l) {
|
|
|
2014
2020
|
m
|
|
2015
2021
|
)
|
|
2016
2022
|
)), !g && w.hasSameRuleAs(r)) {
|
|
2017
|
-
r = r.pop(), s.produce(r,
|
|
2023
|
+
r = r.pop(), s.produce(r, l), c = !0;
|
|
2018
2024
|
return;
|
|
2019
2025
|
}
|
|
2020
2026
|
} else if (Ze(
|
|
@@ -2026,59 +2032,59 @@ function Oa(t, e, n, a, r, s, o, l) {
|
|
|
2026
2032
|
b.captures,
|
|
2027
2033
|
m
|
|
2028
2034
|
), s.produce(r, m[0].end), r = r.pop(), !g) {
|
|
2029
|
-
r = r.safePop(), s.produce(r,
|
|
2035
|
+
r = r.safePop(), s.produce(r, l), c = !0;
|
|
2030
2036
|
return;
|
|
2031
2037
|
}
|
|
2032
2038
|
}
|
|
2033
2039
|
m[0].end > a && (a = m[0].end, n = !1);
|
|
2034
2040
|
}
|
|
2035
2041
|
}
|
|
2036
|
-
function
|
|
2042
|
+
function Hs(t, e, n, a, r, s) {
|
|
2037
2043
|
let o = r.beginRuleCapturedEOL ? 0 : -1;
|
|
2038
|
-
const
|
|
2039
|
-
for (let
|
|
2040
|
-
const c =
|
|
2041
|
-
c instanceof wt &&
|
|
2044
|
+
const i = [];
|
|
2045
|
+
for (let l = r; l; l = l.pop()) {
|
|
2046
|
+
const c = l.getRule(t);
|
|
2047
|
+
c instanceof wt && i.push({
|
|
2042
2048
|
rule: c,
|
|
2043
|
-
stack:
|
|
2049
|
+
stack: l
|
|
2044
2050
|
});
|
|
2045
2051
|
}
|
|
2046
|
-
for (let
|
|
2047
|
-
const { ruleScanner: c, findOptions: u } = Zs(
|
|
2052
|
+
for (let l = i.pop(); l; l = i.pop()) {
|
|
2053
|
+
const { ruleScanner: c, findOptions: u } = Zs(l.rule, t, l.stack.endRule, n, a === o), p = c.findNextMatchSync(e, a, u);
|
|
2048
2054
|
if (p) {
|
|
2049
2055
|
if (p.ruleId !== La) {
|
|
2050
|
-
r =
|
|
2056
|
+
r = l.stack.pop();
|
|
2051
2057
|
break;
|
|
2052
2058
|
}
|
|
2053
|
-
p.captureIndices && p.captureIndices.length && (s.produce(
|
|
2059
|
+
p.captureIndices && p.captureIndices.length && (s.produce(l.stack, p.captureIndices[0].start), Ze(t, e, n, l.stack, s, l.rule.whileCaptures, p.captureIndices), s.produce(l.stack, p.captureIndices[0].end), o = p.captureIndices[0].end, p.captureIndices[0].end > a && (a = p.captureIndices[0].end, n = !1));
|
|
2054
2060
|
} else {
|
|
2055
|
-
r =
|
|
2061
|
+
r = l.stack.pop();
|
|
2056
2062
|
break;
|
|
2057
2063
|
}
|
|
2058
2064
|
}
|
|
2059
2065
|
return { stack: r, linePos: a, anchorPosition: o, isFirstLine: n };
|
|
2060
2066
|
}
|
|
2061
|
-
function
|
|
2062
|
-
const o = Vs(t, e, n, a, r, s),
|
|
2063
|
-
if (
|
|
2067
|
+
function Ws(t, e, n, a, r, s) {
|
|
2068
|
+
const o = Vs(t, e, n, a, r, s), i = t.getInjections();
|
|
2069
|
+
if (i.length === 0)
|
|
2064
2070
|
return o;
|
|
2065
|
-
const
|
|
2066
|
-
if (!
|
|
2071
|
+
const l = Xs(i, t, e, n, a, r, s);
|
|
2072
|
+
if (!l)
|
|
2067
2073
|
return o;
|
|
2068
2074
|
if (!o)
|
|
2069
|
-
return
|
|
2070
|
-
const c = o.captureIndices[0].start, u =
|
|
2071
|
-
return u < c ||
|
|
2075
|
+
return l;
|
|
2076
|
+
const c = o.captureIndices[0].start, u = l.captureIndices[0].start;
|
|
2077
|
+
return u < c || l.priorityMatch && u === c ? l : o;
|
|
2072
2078
|
}
|
|
2073
2079
|
function Vs(t, e, n, a, r, s) {
|
|
2074
|
-
const o = r.getRule(t), { ruleScanner:
|
|
2080
|
+
const o = r.getRule(t), { ruleScanner: i, findOptions: l } = Ga(o, t, r.endRule, n, a === s), c = i.findNextMatchSync(e, a, l);
|
|
2075
2081
|
return c ? {
|
|
2076
2082
|
captureIndices: c.captureIndices,
|
|
2077
2083
|
matchedRuleId: c.ruleId
|
|
2078
2084
|
} : null;
|
|
2079
2085
|
}
|
|
2080
2086
|
function Xs(t, e, n, a, r, s, o) {
|
|
2081
|
-
let
|
|
2087
|
+
let i = Number.MAX_VALUE, l = null, c, u = 0;
|
|
2082
2088
|
const p = s.contentNameScopesList.getScopeNames();
|
|
2083
2089
|
for (let d = 0, f = t.length; d < f; d++) {
|
|
2084
2090
|
const m = t[d];
|
|
@@ -2088,12 +2094,12 @@ function Xs(t, e, n, a, r, s, o) {
|
|
|
2088
2094
|
if (!w)
|
|
2089
2095
|
continue;
|
|
2090
2096
|
const k = w.captureIndices[0].start;
|
|
2091
|
-
if (!(k >=
|
|
2097
|
+
if (!(k >= i) && (i = k, l = w.captureIndices, c = w.ruleId, u = m.priority, i === r))
|
|
2092
2098
|
break;
|
|
2093
2099
|
}
|
|
2094
|
-
return
|
|
2100
|
+
return l ? {
|
|
2095
2101
|
priorityMatch: u === -1,
|
|
2096
|
-
captureIndices:
|
|
2102
|
+
captureIndices: l,
|
|
2097
2103
|
matchedRuleId: c
|
|
2098
2104
|
} : null;
|
|
2099
2105
|
}
|
|
@@ -2114,8 +2120,8 @@ function Zs(t, e, n, a, r) {
|
|
|
2114
2120
|
function Ze(t, e, n, a, r, s, o) {
|
|
2115
2121
|
if (s.length === 0)
|
|
2116
2122
|
return;
|
|
2117
|
-
const
|
|
2118
|
-
for (let p = 0; p <
|
|
2123
|
+
const i = e.content, l = Math.min(s.length, o.length), c = [], u = o[0].end;
|
|
2124
|
+
for (let p = 0; p < l; p++) {
|
|
2119
2125
|
const d = s[p];
|
|
2120
2126
|
if (d === null)
|
|
2121
2127
|
continue;
|
|
@@ -2127,7 +2133,7 @@ function Ze(t, e, n, a, r, s, o) {
|
|
|
2127
2133
|
for (; c.length > 0 && c[c.length - 1].endPos <= f.start; )
|
|
2128
2134
|
r.produceFromScopes(c[c.length - 1].scopes, c[c.length - 1].endPos), c.pop();
|
|
2129
2135
|
if (c.length > 0 ? r.produceFromScopes(c[c.length - 1].scopes, f.start) : r.produce(a, f.start), d.retokenizeCapturedWithRuleId) {
|
|
2130
|
-
const _ = d.getName(
|
|
2136
|
+
const _ = d.getName(i, o), g = a.contentNameScopesList.pushAttributed(_, t), b = d.getContentName(i, o), w = g.pushAttributed(b, t), k = a.push(d.retokenizeCapturedWithRuleId, f.start, -1, !1, null, g, w), v = t.createOnigString(i.substring(0, f.end));
|
|
2131
2137
|
Oa(
|
|
2132
2138
|
t,
|
|
2133
2139
|
v,
|
|
@@ -2141,7 +2147,7 @@ function Ze(t, e, n, a, r, s, o) {
|
|
|
2141
2147
|
), Ba(v);
|
|
2142
2148
|
continue;
|
|
2143
2149
|
}
|
|
2144
|
-
const m = d.getName(
|
|
2150
|
+
const m = d.getName(i, o);
|
|
2145
2151
|
if (m !== null) {
|
|
2146
2152
|
const g = (c.length > 0 ? c[c.length - 1].scopes : a.contentNameScopesList).pushAttributed(m, t);
|
|
2147
2153
|
c.push(new Ks(g, f.end));
|
|
@@ -2157,7 +2163,7 @@ var Ks = class {
|
|
|
2157
2163
|
this.scopes = t, this.endPos = e;
|
|
2158
2164
|
}
|
|
2159
2165
|
};
|
|
2160
|
-
function Js(t, e, n, a, r, s, o,
|
|
2166
|
+
function Js(t, e, n, a, r, s, o, i) {
|
|
2161
2167
|
return new Ys(
|
|
2162
2168
|
t,
|
|
2163
2169
|
e,
|
|
@@ -2166,18 +2172,18 @@ function Js(t, e, n, a, r, s, o, l) {
|
|
|
2166
2172
|
r,
|
|
2167
2173
|
s,
|
|
2168
2174
|
o,
|
|
2169
|
-
|
|
2175
|
+
i
|
|
2170
2176
|
);
|
|
2171
2177
|
}
|
|
2172
2178
|
function Un(t, e, n, a, r) {
|
|
2173
2179
|
const s = _t(e, kt), o = ja.getCompiledRuleId(n, a, r.repository);
|
|
2174
|
-
for (const
|
|
2180
|
+
for (const i of s)
|
|
2175
2181
|
t.push({
|
|
2176
2182
|
debugSelector: e,
|
|
2177
|
-
matcher:
|
|
2183
|
+
matcher: i.matcher,
|
|
2178
2184
|
ruleId: o,
|
|
2179
2185
|
grammar: r,
|
|
2180
|
-
priority:
|
|
2186
|
+
priority: i.priority
|
|
2181
2187
|
});
|
|
2182
2188
|
}
|
|
2183
2189
|
function kt(t, e) {
|
|
@@ -2200,7 +2206,7 @@ function Qs(t, e) {
|
|
|
2200
2206
|
return t.length > n && t.substr(0, n) === e && t[n] === ".";
|
|
2201
2207
|
}
|
|
2202
2208
|
var Ys = class {
|
|
2203
|
-
constructor(t, e, n, a, r, s, o,
|
|
2209
|
+
constructor(t, e, n, a, r, s, o, i) {
|
|
2204
2210
|
h(this, "_rootId");
|
|
2205
2211
|
h(this, "_lastRuleId");
|
|
2206
2212
|
h(this, "_ruleId2desc");
|
|
@@ -2210,16 +2216,16 @@ var Ys = class {
|
|
|
2210
2216
|
h(this, "_injections");
|
|
2211
2217
|
h(this, "_basicScopeAttributesProvider");
|
|
2212
2218
|
h(this, "_tokenTypeMatchers");
|
|
2213
|
-
if (this._rootScopeName = t, this.balancedBracketSelectors = s, this._onigLib =
|
|
2219
|
+
if (this._rootScopeName = t, this.balancedBracketSelectors = s, this._onigLib = i, this._basicScopeAttributesProvider = new zs(
|
|
2214
2220
|
n,
|
|
2215
2221
|
a
|
|
2216
2222
|
), this._rootId = -1, this._lastRuleId = 0, this._ruleId2desc = [null], this._includedGrammars = {}, this._grammarRepository = o, this._grammar = zn(e, null), this._injections = null, this._tokenTypeMatchers = [], r)
|
|
2217
|
-
for (const
|
|
2218
|
-
const c = _t(
|
|
2223
|
+
for (const l of Object.keys(r)) {
|
|
2224
|
+
const c = _t(l, kt);
|
|
2219
2225
|
for (const u of c)
|
|
2220
2226
|
this._tokenTypeMatchers.push({
|
|
2221
2227
|
matcher: u.matcher,
|
|
2222
|
-
type: r[
|
|
2228
|
+
type: r[l]
|
|
2223
2229
|
});
|
|
2224
2230
|
}
|
|
2225
2231
|
}
|
|
@@ -2257,15 +2263,15 @@ var Ys = class {
|
|
|
2257
2263
|
);
|
|
2258
2264
|
const s = this._grammarRepository.injections(n);
|
|
2259
2265
|
s && s.forEach((o) => {
|
|
2260
|
-
const
|
|
2261
|
-
if (
|
|
2262
|
-
const
|
|
2263
|
-
|
|
2266
|
+
const i = this.getExternalGrammar(o);
|
|
2267
|
+
if (i) {
|
|
2268
|
+
const l = i.injectionSelector;
|
|
2269
|
+
l && Un(
|
|
2264
2270
|
e,
|
|
2265
|
-
i,
|
|
2266
2271
|
l,
|
|
2272
|
+
i,
|
|
2267
2273
|
this,
|
|
2268
|
-
|
|
2274
|
+
i
|
|
2269
2275
|
);
|
|
2270
2276
|
}
|
|
2271
2277
|
});
|
|
@@ -2353,26 +2359,26 @@ var Ys = class {
|
|
|
2353
2359
|
r = !1, e.reset();
|
|
2354
2360
|
t = t + `
|
|
2355
2361
|
`;
|
|
2356
|
-
const s = this.createOnigString(t), o = s.content.length,
|
|
2362
|
+
const s = this.createOnigString(t), o = s.content.length, i = new to(
|
|
2357
2363
|
n,
|
|
2358
2364
|
t,
|
|
2359
2365
|
this._tokenTypeMatchers,
|
|
2360
2366
|
this.balancedBracketSelectors
|
|
2361
|
-
),
|
|
2367
|
+
), l = Oa(
|
|
2362
2368
|
this,
|
|
2363
2369
|
s,
|
|
2364
2370
|
r,
|
|
2365
2371
|
0,
|
|
2366
2372
|
e,
|
|
2367
|
-
|
|
2373
|
+
i,
|
|
2368
2374
|
!0,
|
|
2369
2375
|
a
|
|
2370
2376
|
);
|
|
2371
2377
|
return Ba(s), {
|
|
2372
2378
|
lineLength: o,
|
|
2373
|
-
lineTokens:
|
|
2374
|
-
ruleStack:
|
|
2375
|
-
stoppedEarly:
|
|
2379
|
+
lineTokens: i,
|
|
2380
|
+
ruleStack: l.stack,
|
|
2381
|
+
stoppedEarly: l.stoppedEarly
|
|
2376
2382
|
};
|
|
2377
2383
|
}
|
|
2378
2384
|
};
|
|
@@ -2405,12 +2411,12 @@ var Ke = class le {
|
|
|
2405
2411
|
return new le(null, new Ut(null, e), n);
|
|
2406
2412
|
}
|
|
2407
2413
|
static createRootAndLookUpScopeName(e, n, a) {
|
|
2408
|
-
const r = a.getMetadataForScope(e), s = new Ut(null, e), o = a.themeProvider.themeMatch(s),
|
|
2414
|
+
const r = a.getMetadataForScope(e), s = new Ut(null, e), o = a.themeProvider.themeMatch(s), i = le.mergeAttributes(
|
|
2409
2415
|
n,
|
|
2410
2416
|
r,
|
|
2411
2417
|
o
|
|
2412
2418
|
);
|
|
2413
|
-
return new le(null, s,
|
|
2419
|
+
return new le(null, s, i);
|
|
2414
2420
|
}
|
|
2415
2421
|
get scopeName() {
|
|
2416
2422
|
return this.scopePath.scopeName;
|
|
@@ -2454,12 +2460,12 @@ var Ke = class le {
|
|
|
2454
2460
|
return r;
|
|
2455
2461
|
}
|
|
2456
2462
|
static _pushAttributed(e, n, a) {
|
|
2457
|
-
const r = a.getMetadataForScope(n), s = e.scopePath.push(n), o = a.themeProvider.themeMatch(s),
|
|
2463
|
+
const r = a.getMetadataForScope(n), s = e.scopePath.push(n), o = a.themeProvider.themeMatch(s), i = le.mergeAttributes(
|
|
2458
2464
|
e.tokenAttributes,
|
|
2459
2465
|
r,
|
|
2460
2466
|
o
|
|
2461
2467
|
);
|
|
2462
|
-
return new le(e, s,
|
|
2468
|
+
return new le(e, s, i);
|
|
2463
2469
|
}
|
|
2464
2470
|
getScopeNames() {
|
|
2465
2471
|
return this.scopePath.getSegments();
|
|
@@ -2475,7 +2481,7 @@ var Ke = class le {
|
|
|
2475
2481
|
}), a = a.parent;
|
|
2476
2482
|
return a === e ? n.reverse() : void 0;
|
|
2477
2483
|
}
|
|
2478
|
-
},
|
|
2484
|
+
}, ne, sn = (ne = class {
|
|
2479
2485
|
/**
|
|
2480
2486
|
* Invariant:
|
|
2481
2487
|
* ```
|
|
@@ -2487,7 +2493,7 @@ var Ke = class le {
|
|
|
2487
2493
|
* }
|
|
2488
2494
|
* ```
|
|
2489
2495
|
*/
|
|
2490
|
-
constructor(e, n, a, r, s, o,
|
|
2496
|
+
constructor(e, n, a, r, s, o, i, l) {
|
|
2491
2497
|
h(this, "_stackElementBrand");
|
|
2492
2498
|
/**
|
|
2493
2499
|
* The position on the current line where this state was pushed.
|
|
@@ -2505,10 +2511,10 @@ var Ke = class le {
|
|
|
2505
2511
|
* The depth of the stack.
|
|
2506
2512
|
*/
|
|
2507
2513
|
h(this, "depth");
|
|
2508
|
-
this.parent = e, this.ruleId = n, this.beginRuleCapturedEOL = s, this.endRule = o, this.nameScopesList =
|
|
2514
|
+
this.parent = e, this.ruleId = n, this.beginRuleCapturedEOL = s, this.endRule = o, this.nameScopesList = i, this.contentNameScopesList = l, this.depth = this.parent ? this.parent.depth + 1 : 1, this._enterPos = a, this._anchorPos = r;
|
|
2509
2515
|
}
|
|
2510
2516
|
equals(e) {
|
|
2511
|
-
return e === null ? !1 :
|
|
2517
|
+
return e === null ? !1 : ne._equals(this, e);
|
|
2512
2518
|
}
|
|
2513
2519
|
static _equals(e, n) {
|
|
2514
2520
|
return e === n ? !0 : this._structuralEquals(e, n) ? Ke.equals(e.contentNameScopesList, n.contentNameScopesList) : !1;
|
|
@@ -2533,7 +2539,7 @@ var Ke = class le {
|
|
|
2533
2539
|
e._enterPos = -1, e._anchorPos = -1, e = e.parent;
|
|
2534
2540
|
}
|
|
2535
2541
|
reset() {
|
|
2536
|
-
|
|
2542
|
+
ne._reset(this);
|
|
2537
2543
|
}
|
|
2538
2544
|
pop() {
|
|
2539
2545
|
return this.parent;
|
|
@@ -2541,8 +2547,8 @@ var Ke = class le {
|
|
|
2541
2547
|
safePop() {
|
|
2542
2548
|
return this.parent ? this.parent : this;
|
|
2543
2549
|
}
|
|
2544
|
-
push(e, n, a, r, s, o,
|
|
2545
|
-
return new
|
|
2550
|
+
push(e, n, a, r, s, o, i) {
|
|
2551
|
+
return new ne(
|
|
2546
2552
|
this,
|
|
2547
2553
|
e,
|
|
2548
2554
|
n,
|
|
@@ -2550,7 +2556,7 @@ var Ke = class le {
|
|
|
2550
2556
|
r,
|
|
2551
2557
|
s,
|
|
2552
2558
|
o,
|
|
2553
|
-
|
|
2559
|
+
i
|
|
2554
2560
|
);
|
|
2555
2561
|
}
|
|
2556
2562
|
getEnterPos() {
|
|
@@ -2582,7 +2588,7 @@ var Ke = class le {
|
|
|
2582
2588
|
);
|
|
2583
2589
|
}
|
|
2584
2590
|
withEndRule(e) {
|
|
2585
|
-
return this.endRule === e ? this : new
|
|
2591
|
+
return this.endRule === e ? this : new ne(
|
|
2586
2592
|
this.parent,
|
|
2587
2593
|
this.ruleId,
|
|
2588
2594
|
this._enterPos,
|
|
@@ -2615,7 +2621,7 @@ var Ke = class le {
|
|
|
2615
2621
|
}
|
|
2616
2622
|
static pushFrame(e, n) {
|
|
2617
2623
|
const a = Ke.fromExtension((e == null ? void 0 : e.nameScopesList) ?? null, n.nameScopesList);
|
|
2618
|
-
return new
|
|
2624
|
+
return new ne(
|
|
2619
2625
|
e,
|
|
2620
2626
|
n.ruleId,
|
|
2621
2627
|
n.enterPos ?? -1,
|
|
@@ -2627,7 +2633,7 @@ var Ke = class le {
|
|
|
2627
2633
|
);
|
|
2628
2634
|
}
|
|
2629
2635
|
}, // TODO remove me
|
|
2630
|
-
h(
|
|
2636
|
+
h(ne, "NULL", new ne(
|
|
2631
2637
|
null,
|
|
2632
2638
|
0,
|
|
2633
2639
|
0,
|
|
@@ -2636,7 +2642,7 @@ h(te, "NULL", new te(
|
|
|
2636
2642
|
null,
|
|
2637
2643
|
null,
|
|
2638
2644
|
null
|
|
2639
|
-
)),
|
|
2645
|
+
)), ne), eo = class {
|
|
2640
2646
|
constructor(t, e) {
|
|
2641
2647
|
h(this, "balancedBracketScopes");
|
|
2642
2648
|
h(this, "unbalancedBracketScopes");
|
|
@@ -2692,11 +2698,11 @@ h(te, "NULL", new te(
|
|
|
2692
2698
|
let r = (t == null ? void 0 : t.tokenAttributes) ?? 0, s = !1;
|
|
2693
2699
|
if ((a = this.balancedBracketSelectors) != null && a.matchesAlways && (s = !0), this._tokenTypeOverrides.length > 0 || this.balancedBracketSelectors && !this.balancedBracketSelectors.matchesAlways && !this.balancedBracketSelectors.matchesNever) {
|
|
2694
2700
|
const o = (t == null ? void 0 : t.getScopeNames()) ?? [];
|
|
2695
|
-
for (const
|
|
2696
|
-
|
|
2701
|
+
for (const i of this._tokenTypeOverrides)
|
|
2702
|
+
i.matcher(o) && (r = ze.set(
|
|
2697
2703
|
r,
|
|
2698
2704
|
0,
|
|
2699
|
-
|
|
2705
|
+
i.type,
|
|
2700
2706
|
null,
|
|
2701
2707
|
-1,
|
|
2702
2708
|
0,
|
|
@@ -2863,7 +2869,7 @@ h(te, "NULL", new te(
|
|
|
2863
2869
|
_loadGrammar(e, n, a, r, s) {
|
|
2864
2870
|
const o = new Ps(this._syncRegistry, e);
|
|
2865
2871
|
for (; o.Q.length > 0; )
|
|
2866
|
-
o.Q.map((
|
|
2872
|
+
o.Q.map((i) => this._loadSingleGrammar(i.scopeName)), o.processQueue();
|
|
2867
2873
|
return this._grammarForScopeName(
|
|
2868
2874
|
e,
|
|
2869
2875
|
n,
|
|
@@ -2976,13 +2982,13 @@ Q.prototype.property = "";
|
|
|
2976
2982
|
Q.prototype.spaceSeparated = !1;
|
|
2977
2983
|
Q.prototype.space = void 0;
|
|
2978
2984
|
let so = 0;
|
|
2979
|
-
const
|
|
2985
|
+
const S = Te(), F = Te(), cn = Te(), y = Te(), P = Te(), De = Te(), Y = Te();
|
|
2980
2986
|
function Te() {
|
|
2981
2987
|
return 2 ** ++so;
|
|
2982
2988
|
}
|
|
2983
2989
|
const un = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
2984
2990
|
__proto__: null,
|
|
2985
|
-
boolean:
|
|
2991
|
+
boolean: S,
|
|
2986
2992
|
booleanish: F,
|
|
2987
2993
|
commaOrSpaceSeparated: Y,
|
|
2988
2994
|
commaSeparated: De,
|
|
@@ -3111,38 +3117,38 @@ const oo = qe({
|
|
|
3111
3117
|
accessKey: P,
|
|
3112
3118
|
action: null,
|
|
3113
3119
|
allow: null,
|
|
3114
|
-
allowFullScreen:
|
|
3115
|
-
allowPaymentRequest:
|
|
3116
|
-
allowUserMedia:
|
|
3120
|
+
allowFullScreen: S,
|
|
3121
|
+
allowPaymentRequest: S,
|
|
3122
|
+
allowUserMedia: S,
|
|
3117
3123
|
alt: null,
|
|
3118
3124
|
as: null,
|
|
3119
|
-
async:
|
|
3125
|
+
async: S,
|
|
3120
3126
|
autoCapitalize: null,
|
|
3121
3127
|
autoComplete: P,
|
|
3122
|
-
autoFocus:
|
|
3123
|
-
autoPlay:
|
|
3128
|
+
autoFocus: S,
|
|
3129
|
+
autoPlay: S,
|
|
3124
3130
|
blocking: P,
|
|
3125
3131
|
capture: null,
|
|
3126
3132
|
charSet: null,
|
|
3127
|
-
checked:
|
|
3133
|
+
checked: S,
|
|
3128
3134
|
cite: null,
|
|
3129
3135
|
className: P,
|
|
3130
3136
|
cols: y,
|
|
3131
3137
|
colSpan: null,
|
|
3132
3138
|
content: null,
|
|
3133
3139
|
contentEditable: F,
|
|
3134
|
-
controls:
|
|
3140
|
+
controls: S,
|
|
3135
3141
|
controlsList: P,
|
|
3136
3142
|
coords: y | De,
|
|
3137
3143
|
crossOrigin: null,
|
|
3138
3144
|
data: null,
|
|
3139
3145
|
dateTime: null,
|
|
3140
3146
|
decoding: null,
|
|
3141
|
-
default:
|
|
3142
|
-
defer:
|
|
3147
|
+
default: S,
|
|
3148
|
+
defer: S,
|
|
3143
3149
|
dir: null,
|
|
3144
3150
|
dirName: null,
|
|
3145
|
-
disabled:
|
|
3151
|
+
disabled: S,
|
|
3146
3152
|
download: cn,
|
|
3147
3153
|
draggable: F,
|
|
3148
3154
|
encType: null,
|
|
@@ -3152,7 +3158,7 @@ const oo = qe({
|
|
|
3152
3158
|
formAction: null,
|
|
3153
3159
|
formEncType: null,
|
|
3154
3160
|
formMethod: null,
|
|
3155
|
-
formNoValidate:
|
|
3161
|
+
formNoValidate: S,
|
|
3156
3162
|
formTarget: null,
|
|
3157
3163
|
headers: P,
|
|
3158
3164
|
height: y,
|
|
@@ -3165,15 +3171,15 @@ const oo = qe({
|
|
|
3165
3171
|
id: null,
|
|
3166
3172
|
imageSizes: null,
|
|
3167
3173
|
imageSrcSet: null,
|
|
3168
|
-
inert:
|
|
3174
|
+
inert: S,
|
|
3169
3175
|
inputMode: null,
|
|
3170
3176
|
integrity: null,
|
|
3171
3177
|
is: null,
|
|
3172
|
-
isMap:
|
|
3178
|
+
isMap: S,
|
|
3173
3179
|
itemId: null,
|
|
3174
3180
|
itemProp: P,
|
|
3175
3181
|
itemRef: P,
|
|
3176
|
-
itemScope:
|
|
3182
|
+
itemScope: S,
|
|
3177
3183
|
itemType: P,
|
|
3178
3184
|
kind: null,
|
|
3179
3185
|
label: null,
|
|
@@ -3181,7 +3187,7 @@ const oo = qe({
|
|
|
3181
3187
|
language: null,
|
|
3182
3188
|
list: null,
|
|
3183
3189
|
loading: null,
|
|
3184
|
-
loop:
|
|
3190
|
+
loop: S,
|
|
3185
3191
|
low: y,
|
|
3186
3192
|
manifest: null,
|
|
3187
3193
|
max: null,
|
|
@@ -3190,12 +3196,12 @@ const oo = qe({
|
|
|
3190
3196
|
method: null,
|
|
3191
3197
|
min: null,
|
|
3192
3198
|
minLength: y,
|
|
3193
|
-
multiple:
|
|
3194
|
-
muted:
|
|
3199
|
+
multiple: S,
|
|
3200
|
+
muted: S,
|
|
3195
3201
|
name: null,
|
|
3196
3202
|
nonce: null,
|
|
3197
|
-
noModule:
|
|
3198
|
-
noValidate:
|
|
3203
|
+
noModule: S,
|
|
3204
|
+
noValidate: S,
|
|
3199
3205
|
onAbort: null,
|
|
3200
3206
|
onAfterPrint: null,
|
|
3201
3207
|
onAuxClick: null,
|
|
@@ -3284,31 +3290,31 @@ const oo = qe({
|
|
|
3284
3290
|
onVolumeChange: null,
|
|
3285
3291
|
onWaiting: null,
|
|
3286
3292
|
onWheel: null,
|
|
3287
|
-
open:
|
|
3293
|
+
open: S,
|
|
3288
3294
|
optimum: y,
|
|
3289
3295
|
pattern: null,
|
|
3290
3296
|
ping: P,
|
|
3291
3297
|
placeholder: null,
|
|
3292
|
-
playsInline:
|
|
3298
|
+
playsInline: S,
|
|
3293
3299
|
popover: null,
|
|
3294
3300
|
popoverTarget: null,
|
|
3295
3301
|
popoverTargetAction: null,
|
|
3296
3302
|
poster: null,
|
|
3297
3303
|
preload: null,
|
|
3298
|
-
readOnly:
|
|
3304
|
+
readOnly: S,
|
|
3299
3305
|
referrerPolicy: null,
|
|
3300
3306
|
rel: P,
|
|
3301
|
-
required:
|
|
3302
|
-
reversed:
|
|
3307
|
+
required: S,
|
|
3308
|
+
reversed: S,
|
|
3303
3309
|
rows: y,
|
|
3304
3310
|
rowSpan: y,
|
|
3305
3311
|
sandbox: P,
|
|
3306
3312
|
scope: null,
|
|
3307
|
-
scoped:
|
|
3308
|
-
seamless:
|
|
3309
|
-
selected:
|
|
3310
|
-
shadowRootClonable:
|
|
3311
|
-
shadowRootDelegatesFocus:
|
|
3313
|
+
scoped: S,
|
|
3314
|
+
seamless: S,
|
|
3315
|
+
selected: S,
|
|
3316
|
+
shadowRootClonable: S,
|
|
3317
|
+
shadowRootDelegatesFocus: S,
|
|
3312
3318
|
shadowRootMode: null,
|
|
3313
3319
|
shape: null,
|
|
3314
3320
|
size: y,
|
|
@@ -3328,7 +3334,7 @@ const oo = qe({
|
|
|
3328
3334
|
title: null,
|
|
3329
3335
|
translate: null,
|
|
3330
3336
|
type: null,
|
|
3331
|
-
typeMustMatch:
|
|
3337
|
+
typeMustMatch: S,
|
|
3332
3338
|
useMap: null,
|
|
3333
3339
|
value: F,
|
|
3334
3340
|
width: y,
|
|
@@ -3374,9 +3380,9 @@ const oo = qe({
|
|
|
3374
3380
|
// `<object>`
|
|
3375
3381
|
color: null,
|
|
3376
3382
|
// `<font>` and `<hr>`. Use CSS instead
|
|
3377
|
-
compact:
|
|
3383
|
+
compact: S,
|
|
3378
3384
|
// Lists. Use CSS to reduce space between items instead
|
|
3379
|
-
declare:
|
|
3385
|
+
declare: S,
|
|
3380
3386
|
// `<object>`
|
|
3381
3387
|
event: null,
|
|
3382
3388
|
// `<script>`
|
|
@@ -3400,13 +3406,13 @@ const oo = qe({
|
|
|
3400
3406
|
// `<body>`
|
|
3401
3407
|
marginWidth: y,
|
|
3402
3408
|
// `<body>`
|
|
3403
|
-
noResize:
|
|
3409
|
+
noResize: S,
|
|
3404
3410
|
// `<frame>`
|
|
3405
|
-
noHref:
|
|
3411
|
+
noHref: S,
|
|
3406
3412
|
// `<area>`. Use no href instead of an explicit `nohref`
|
|
3407
|
-
noShade:
|
|
3413
|
+
noShade: S,
|
|
3408
3414
|
// `<hr>`. Use background-color and height instead of borders
|
|
3409
|
-
noWrap:
|
|
3415
|
+
noWrap: S,
|
|
3410
3416
|
// `<td>` and `<th>`
|
|
3411
3417
|
object: null,
|
|
3412
3418
|
// `<applet>`
|
|
@@ -3446,8 +3452,8 @@ const oo = qe({
|
|
|
3446
3452
|
allowTransparency: null,
|
|
3447
3453
|
autoCorrect: null,
|
|
3448
3454
|
autoSave: null,
|
|
3449
|
-
disablePictureInPicture:
|
|
3450
|
-
disableRemotePlayback:
|
|
3455
|
+
disablePictureInPicture: S,
|
|
3456
|
+
disableRemotePlayback: S,
|
|
3451
3457
|
prefix: null,
|
|
3452
3458
|
property: null,
|
|
3453
3459
|
results: y,
|
|
@@ -3682,7 +3688,7 @@ const oo = qe({
|
|
|
3682
3688
|
dur: null,
|
|
3683
3689
|
divisor: y,
|
|
3684
3690
|
dominantBaseline: null,
|
|
3685
|
-
download:
|
|
3691
|
+
download: S,
|
|
3686
3692
|
dx: null,
|
|
3687
3693
|
dy: null,
|
|
3688
3694
|
edgeMode: null,
|
|
@@ -4029,18 +4035,18 @@ const oo = qe({
|
|
|
4029
4035
|
transform(t, e) {
|
|
4030
4036
|
return "xlink:" + e.slice(5).toLowerCase();
|
|
4031
4037
|
}
|
|
4032
|
-
}),
|
|
4038
|
+
}), Ha = qe({
|
|
4033
4039
|
attributes: { xmlnsxlink: "xmlns:xlink" },
|
|
4034
4040
|
properties: { xmlnsXLink: null, xmlns: null },
|
|
4035
4041
|
space: "xmlns",
|
|
4036
4042
|
transform: za
|
|
4037
|
-
}),
|
|
4043
|
+
}), Wa = qe({
|
|
4038
4044
|
properties: { xmlBase: null, xmlLang: null, xmlSpace: null },
|
|
4039
4045
|
space: "xml",
|
|
4040
4046
|
transform(t, e) {
|
|
4041
4047
|
return "xml:" + e.slice(3).toLowerCase();
|
|
4042
4048
|
}
|
|
4043
|
-
}), lo = /[A-Z]/g,
|
|
4049
|
+
}), lo = /[A-Z]/g, Hn = /-[a-z]/g, co = /^data[-\w.:]+$/i;
|
|
4044
4050
|
function uo(t, e) {
|
|
4045
4051
|
const n = ln(e);
|
|
4046
4052
|
let a = e, r = Q;
|
|
@@ -4048,11 +4054,11 @@ function uo(t, e) {
|
|
|
4048
4054
|
return t.property[t.normal[n]];
|
|
4049
4055
|
if (n.length > 4 && n.slice(0, 4) === "data" && co.test(e)) {
|
|
4050
4056
|
if (e.charAt(4) === "-") {
|
|
4051
|
-
const s = e.slice(5).replace(
|
|
4057
|
+
const s = e.slice(5).replace(Hn, mo);
|
|
4052
4058
|
a = "data" + s.charAt(0).toUpperCase() + s.slice(1);
|
|
4053
4059
|
} else {
|
|
4054
4060
|
const s = e.slice(4);
|
|
4055
|
-
if (!
|
|
4061
|
+
if (!Hn.test(s)) {
|
|
4056
4062
|
let o = s.replace(lo, po);
|
|
4057
4063
|
o.charAt(0) !== "-" && (o = "-" + o), e = "data" + o;
|
|
4058
4064
|
}
|
|
@@ -4067,15 +4073,15 @@ function po(t) {
|
|
|
4067
4073
|
function mo(t) {
|
|
4068
4074
|
return t.charAt(1).toUpperCase();
|
|
4069
4075
|
}
|
|
4070
|
-
const fo = Fa([Da, oo, qa,
|
|
4076
|
+
const fo = Fa([Da, oo, qa, Ha, Wa], "html"), Va = Fa([Da, io, qa, Ha, Wa], "svg"), Wn = {}.hasOwnProperty;
|
|
4071
4077
|
function ho(t, e) {
|
|
4072
4078
|
const n = e || {};
|
|
4073
4079
|
function a(r, ...s) {
|
|
4074
4080
|
let o = a.invalid;
|
|
4075
|
-
const
|
|
4076
|
-
if (r &&
|
|
4077
|
-
const
|
|
4078
|
-
o =
|
|
4081
|
+
const i = a.handlers;
|
|
4082
|
+
if (r && Wn.call(r, t)) {
|
|
4083
|
+
const l = String(r[t]);
|
|
4084
|
+
o = Wn.call(i, l) ? i[l] : a.unknown;
|
|
4079
4085
|
}
|
|
4080
4086
|
if (o)
|
|
4081
4087
|
return o.call(this, r, ...s);
|
|
@@ -4236,7 +4242,7 @@ const Eo = [
|
|
|
4236
4242
|
"yacute",
|
|
4237
4243
|
"yen",
|
|
4238
4244
|
"yuml"
|
|
4239
|
-
],
|
|
4245
|
+
], Ht = {
|
|
4240
4246
|
nbsp: " ",
|
|
4241
4247
|
iexcl: "¡",
|
|
4242
4248
|
cent: "¢",
|
|
@@ -4500,8 +4506,8 @@ const Eo = [
|
|
|
4500
4506
|
"times"
|
|
4501
4507
|
], Xa = {}.hasOwnProperty, pn = {};
|
|
4502
4508
|
let ut;
|
|
4503
|
-
for (ut in
|
|
4504
|
-
Xa.call(
|
|
4509
|
+
for (ut in Ht)
|
|
4510
|
+
Xa.call(Ht, ut) && (pn[Ht[ut]] = ut);
|
|
4505
4511
|
const Io = /[^\dA-Za-z]/;
|
|
4506
4512
|
function Ro(t, e, n, a) {
|
|
4507
4513
|
const r = String.fromCharCode(t);
|
|
@@ -4577,11 +4583,11 @@ function Ka(t) {
|
|
|
4577
4583
|
return e;
|
|
4578
4584
|
function e(n, a, r) {
|
|
4579
4585
|
const s = n ? n.children : Fo;
|
|
4580
|
-
let o = (a || 0) + t,
|
|
4586
|
+
let o = (a || 0) + t, i = s[o];
|
|
4581
4587
|
if (!r)
|
|
4582
|
-
for (;
|
|
4583
|
-
o += t,
|
|
4584
|
-
return
|
|
4588
|
+
for (; i && kn(i); )
|
|
4589
|
+
o += t, i = s[o];
|
|
4590
|
+
return i;
|
|
4585
4591
|
}
|
|
4586
4592
|
}
|
|
4587
4593
|
const Do = {}.hasOwnProperty;
|
|
@@ -4593,13 +4599,13 @@ function Ja(t) {
|
|
|
4593
4599
|
}
|
|
4594
4600
|
const vn = Ja({
|
|
4595
4601
|
body: zo,
|
|
4596
|
-
caption:
|
|
4597
|
-
colgroup:
|
|
4602
|
+
caption: Wt,
|
|
4603
|
+
colgroup: Wt,
|
|
4598
4604
|
dd: Vo,
|
|
4599
|
-
dt:
|
|
4600
|
-
head:
|
|
4605
|
+
dt: Wo,
|
|
4606
|
+
head: Wt,
|
|
4601
4607
|
html: Uo,
|
|
4602
|
-
li:
|
|
4608
|
+
li: Ho,
|
|
4603
4609
|
optgroup: Xo,
|
|
4604
4610
|
option: Zo,
|
|
4605
4611
|
p: qo,
|
|
@@ -4612,7 +4618,7 @@ const vn = Ja({
|
|
|
4612
4618
|
thead: Ko,
|
|
4613
4619
|
tr: Yo
|
|
4614
4620
|
});
|
|
4615
|
-
function
|
|
4621
|
+
function Wt(t, e, n) {
|
|
4616
4622
|
const a = z(n, e, !0);
|
|
4617
4623
|
return !a || a.type !== "comment" && !(a.type === "text" && kn(a.value.charAt(0)));
|
|
4618
4624
|
}
|
|
@@ -4629,11 +4635,11 @@ function qo(t, e, n) {
|
|
|
4629
4635
|
return a ? a.type === "element" && (a.tagName === "address" || a.tagName === "article" || a.tagName === "aside" || a.tagName === "blockquote" || a.tagName === "details" || a.tagName === "div" || a.tagName === "dl" || a.tagName === "fieldset" || a.tagName === "figcaption" || a.tagName === "figure" || a.tagName === "footer" || a.tagName === "form" || a.tagName === "h1" || a.tagName === "h2" || a.tagName === "h3" || a.tagName === "h4" || a.tagName === "h5" || a.tagName === "h6" || a.tagName === "header" || a.tagName === "hgroup" || a.tagName === "hr" || a.tagName === "main" || a.tagName === "menu" || a.tagName === "nav" || a.tagName === "ol" || a.tagName === "p" || a.tagName === "pre" || a.tagName === "section" || a.tagName === "table" || a.tagName === "ul") : !n || // Confusing parent.
|
|
4630
4636
|
!(n.type === "element" && (n.tagName === "a" || n.tagName === "audio" || n.tagName === "del" || n.tagName === "ins" || n.tagName === "map" || n.tagName === "noscript" || n.tagName === "video"));
|
|
4631
4637
|
}
|
|
4632
|
-
function
|
|
4638
|
+
function Ho(t, e, n) {
|
|
4633
4639
|
const a = z(n, e);
|
|
4634
4640
|
return !a || a.type === "element" && a.tagName === "li";
|
|
4635
4641
|
}
|
|
4636
|
-
function
|
|
4642
|
+
function Wo(t, e, n) {
|
|
4637
4643
|
const a = z(n, e);
|
|
4638
4644
|
return !!(a && a.type === "element" && (a.tagName === "dt" || a.tagName === "dd"));
|
|
4639
4645
|
}
|
|
@@ -4738,13 +4744,13 @@ const pt = {
|
|
|
4738
4744
|
function oi(t, e, n, a) {
|
|
4739
4745
|
const r = a.schema, s = r.space === "svg" ? !1 : a.settings.omitOptionalTags;
|
|
4740
4746
|
let o = r.space === "svg" ? a.settings.closeEmptyElements : a.settings.voids.includes(t.tagName.toLowerCase());
|
|
4741
|
-
const
|
|
4742
|
-
let
|
|
4747
|
+
const i = [];
|
|
4748
|
+
let l;
|
|
4743
4749
|
r.space === "html" && t.tagName === "svg" && (a.schema = Va);
|
|
4744
4750
|
const c = ii(a, t.properties), u = a.all(
|
|
4745
4751
|
r.space === "html" && t.tagName === "template" ? t.content : t
|
|
4746
4752
|
);
|
|
4747
|
-
return a.schema = r, u && (o = !1), (c || !s || !ei(t, e, n)) && (
|
|
4753
|
+
return a.schema = r, u && (o = !1), (c || !s || !ei(t, e, n)) && (i.push("<", t.tagName, c ? " " + c : ""), o && (r.space === "svg" || a.settings.closeSelfClosing) && (l = c.charAt(c.length - 1), (!a.settings.tightSelfClosing || l === "/" || l && l !== '"' && l !== "'") && i.push(" "), i.push("/")), i.push(">")), i.push(u), !o && (!s || !vn(t, e, n)) && i.push("</" + t.tagName + ">"), i.join("");
|
|
4748
4754
|
}
|
|
4749
4755
|
function ii(t, e) {
|
|
4750
4756
|
const n = [];
|
|
@@ -4764,10 +4770,10 @@ function ii(t, e) {
|
|
|
4764
4770
|
}
|
|
4765
4771
|
function li(t, e, n) {
|
|
4766
4772
|
const a = uo(t.schema, e), r = t.settings.allowParseErrors && t.schema.space === "html" ? 0 : 1, s = t.settings.allowDangerousCharacters ? 0 : 1;
|
|
4767
|
-
let o = t.quote,
|
|
4773
|
+
let o = t.quote, i;
|
|
4768
4774
|
if (a.overloadedBoolean && (n === a.attribute || n === "") ? n = !0 : (a.boolean || a.overloadedBoolean) && (typeof n != "string" || n === a.attribute || n === "") && (n = !!n), n == null || n === !1 || typeof n == "number" && Number.isNaN(n))
|
|
4769
4775
|
return "";
|
|
4770
|
-
const
|
|
4776
|
+
const l = Ue(
|
|
4771
4777
|
a.attribute,
|
|
4772
4778
|
Object.assign({}, t.settings.characterReferences, {
|
|
4773
4779
|
// Always encode without parse errors in non-HTML.
|
|
@@ -4776,20 +4782,20 @@ function li(t, e, n) {
|
|
|
4776
4782
|
);
|
|
4777
4783
|
return n === !0 || (n = Array.isArray(n) ? (a.commaSeparated ? Mo : Oo)(n, {
|
|
4778
4784
|
padLeft: !t.settings.tightCommaSeparatedLists
|
|
4779
|
-
}) : String(n), t.settings.collapseEmptyAttributes && !n) ?
|
|
4785
|
+
}) : String(n), t.settings.collapseEmptyAttributes && !n) ? l : (t.settings.preferUnquoted && (i = Ue(
|
|
4780
4786
|
n,
|
|
4781
4787
|
Object.assign({}, t.settings.characterReferences, {
|
|
4782
4788
|
attribute: !0,
|
|
4783
4789
|
subset: pt.unquoted[r][s]
|
|
4784
4790
|
})
|
|
4785
|
-
)),
|
|
4791
|
+
)), i !== n && (t.settings.quoteSmart && Xn(n, o) > Xn(n, t.alternative) && (o = t.alternative), i = o + Ue(
|
|
4786
4792
|
n,
|
|
4787
4793
|
Object.assign({}, t.settings.characterReferences, {
|
|
4788
4794
|
// Always encode without parse errors in non-HTML.
|
|
4789
4795
|
subset: (o === "'" ? pt.single : pt.double)[r][s],
|
|
4790
4796
|
attribute: !0
|
|
4791
4797
|
})
|
|
4792
|
-
) + o),
|
|
4798
|
+
) + o), l + (i && "=" + i));
|
|
4793
4799
|
}
|
|
4794
4800
|
const ci = ["<", "&"];
|
|
4795
4801
|
function Qa(t, e, n, a) {
|
|
@@ -4910,8 +4916,8 @@ function Nt(t, e = !1) {
|
|
|
4910
4916
|
let a = 0;
|
|
4911
4917
|
const r = [];
|
|
4912
4918
|
for (let o = 0; o < n.length; o += 2) {
|
|
4913
|
-
const
|
|
4914
|
-
r.push([
|
|
4919
|
+
const i = e ? n[o] + (n[o + 1] || "") : n[o];
|
|
4920
|
+
r.push([i, a]), a += n[o].length, a += ((s = n[o + 1]) == null ? void 0 : s.length) || 0;
|
|
4915
4921
|
}
|
|
4916
4922
|
return r;
|
|
4917
4923
|
}
|
|
@@ -4924,17 +4930,17 @@ function Ci(t) {
|
|
|
4924
4930
|
character: e[e.length - 1].length
|
|
4925
4931
|
};
|
|
4926
4932
|
let s = r, o = 0;
|
|
4927
|
-
for (const
|
|
4928
|
-
if (s <
|
|
4933
|
+
for (const i of e) {
|
|
4934
|
+
if (s < i.length)
|
|
4929
4935
|
break;
|
|
4930
|
-
s -=
|
|
4936
|
+
s -= i.length, o++;
|
|
4931
4937
|
}
|
|
4932
4938
|
return { line: o, character: s };
|
|
4933
4939
|
}
|
|
4934
4940
|
function a(r, s) {
|
|
4935
4941
|
let o = 0;
|
|
4936
|
-
for (let
|
|
4937
|
-
o += e[
|
|
4942
|
+
for (let i = 0; i < r; i++)
|
|
4943
|
+
o += e[i].length;
|
|
4938
4944
|
return o += s, o;
|
|
4939
4945
|
}
|
|
4940
4946
|
return {
|
|
@@ -4961,7 +4967,7 @@ function xi(t, e) {
|
|
|
4961
4967
|
function Si(t, e) {
|
|
4962
4968
|
const n = Array.from(e instanceof Set ? e : new Set(e)).sort((a, r) => a - r);
|
|
4963
4969
|
return n.length ? t.map((a) => a.flatMap((r) => {
|
|
4964
|
-
const s = n.filter((o) => r.offset < o && o < r.offset + r.content.length).map((o) => o - r.offset).sort((o,
|
|
4970
|
+
const s = n.filter((o) => r.offset < o && o < r.offset + r.content.length).map((o) => o - r.offset).sort((o, i) => o - i);
|
|
4965
4971
|
return s.length ? xi(r, s) : r;
|
|
4966
4972
|
})) : t;
|
|
4967
4973
|
}
|
|
@@ -4970,18 +4976,18 @@ function Ei(t, e, n, a) {
|
|
|
4970
4976
|
content: t.content,
|
|
4971
4977
|
explanation: t.explanation,
|
|
4972
4978
|
offset: t.offset
|
|
4973
|
-
}, s = e.map((
|
|
4974
|
-
return s.forEach((
|
|
4979
|
+
}, s = e.map((l) => Ct(t.variants[l])), o = new Set(s.flatMap((l) => Object.keys(l))), i = {};
|
|
4980
|
+
return s.forEach((l, c) => {
|
|
4975
4981
|
for (const u of o) {
|
|
4976
|
-
const p =
|
|
4982
|
+
const p = l[u] || "inherit";
|
|
4977
4983
|
if (c === 0 && a)
|
|
4978
|
-
|
|
4984
|
+
i[u] = p;
|
|
4979
4985
|
else {
|
|
4980
4986
|
const d = u === "color" ? "" : u === "background-color" ? "-bg" : `-${u}`, f = n + e[c] + (u === "color" ? "" : d);
|
|
4981
|
-
|
|
4987
|
+
i[f] = p;
|
|
4982
4988
|
}
|
|
4983
4989
|
}
|
|
4984
|
-
}), r.htmlStyle =
|
|
4990
|
+
}), r.htmlStyle = i, r;
|
|
4985
4991
|
}
|
|
4986
4992
|
function Ct(t) {
|
|
4987
4993
|
const e = {};
|
|
@@ -5002,7 +5008,7 @@ function Pt(t, e) {
|
|
|
5002
5008
|
function nt(t) {
|
|
5003
5009
|
return tr.get(t);
|
|
5004
5010
|
}
|
|
5005
|
-
class
|
|
5011
|
+
class He {
|
|
5006
5012
|
constructor(...e) {
|
|
5007
5013
|
/**
|
|
5008
5014
|
* Theme to Stack mapping
|
|
@@ -5030,7 +5036,7 @@ class We {
|
|
|
5030
5036
|
* Static method to create a initial grammar state.
|
|
5031
5037
|
*/
|
|
5032
5038
|
static initial(e, n) {
|
|
5033
|
-
return new
|
|
5039
|
+
return new He(
|
|
5034
5040
|
Object.fromEntries(wi(n).map((a) => [a, on])),
|
|
5035
5041
|
e
|
|
5036
5042
|
);
|
|
@@ -5067,7 +5073,7 @@ function Ai(t) {
|
|
|
5067
5073
|
return a(t), e;
|
|
5068
5074
|
}
|
|
5069
5075
|
function Ii(t, e) {
|
|
5070
|
-
if (!(t instanceof
|
|
5076
|
+
if (!(t instanceof He))
|
|
5071
5077
|
throw new X("Invalid grammar state");
|
|
5072
5078
|
return t.getInternalStack(e);
|
|
5073
5079
|
}
|
|
@@ -5084,11 +5090,11 @@ function Ri() {
|
|
|
5084
5090
|
offset: o
|
|
5085
5091
|
};
|
|
5086
5092
|
} else {
|
|
5087
|
-
const
|
|
5088
|
-
if (
|
|
5093
|
+
const i = r.lines[o.line];
|
|
5094
|
+
if (i === void 0)
|
|
5089
5095
|
throw new X(`Invalid decoration position ${JSON.stringify(o)}. Lines length: ${r.lines.length}`);
|
|
5090
|
-
if (o.character < 0 || o.character >
|
|
5091
|
-
throw new X(`Invalid decoration position ${JSON.stringify(o)}. Line ${o.line} length: ${
|
|
5096
|
+
if (o.character < 0 || o.character > i.length)
|
|
5097
|
+
throw new X(`Invalid decoration position ${JSON.stringify(o)}. Line ${o.line} length: ${i.length}`);
|
|
5092
5098
|
return {
|
|
5093
5099
|
...o,
|
|
5094
5100
|
offset: r.posToIndex(o.line, o.character)
|
|
@@ -5114,7 +5120,7 @@ function Ri() {
|
|
|
5114
5120
|
var o;
|
|
5115
5121
|
if (!((o = this.options.decorations) != null && o.length))
|
|
5116
5122
|
return;
|
|
5117
|
-
const r = e(this).decorations.flatMap((
|
|
5123
|
+
const r = e(this).decorations.flatMap((i) => [i.start.offset, i.end.offset]);
|
|
5118
5124
|
return Si(n, r);
|
|
5119
5125
|
},
|
|
5120
5126
|
code(n) {
|
|
@@ -5136,9 +5142,9 @@ function Ri() {
|
|
|
5136
5142
|
throw new X(`Failed to find end index for decoration ${JSON.stringify(m.end)}`);
|
|
5137
5143
|
const k = _.children.slice(b, w);
|
|
5138
5144
|
if (!m.alwaysWrap && k.length === _.children.length)
|
|
5139
|
-
|
|
5145
|
+
i(_, m, "line");
|
|
5140
5146
|
else if (!m.alwaysWrap && k.length === 1 && k[0].type === "element")
|
|
5141
|
-
|
|
5147
|
+
i(k[0], m, "token");
|
|
5142
5148
|
else {
|
|
5143
5149
|
const v = {
|
|
5144
5150
|
type: "element",
|
|
@@ -5146,13 +5152,13 @@ function Ri() {
|
|
|
5146
5152
|
properties: {},
|
|
5147
5153
|
children: k
|
|
5148
5154
|
};
|
|
5149
|
-
|
|
5155
|
+
i(v, m, "wrapper"), _.children.splice(b, k.length, v);
|
|
5150
5156
|
}
|
|
5151
5157
|
}
|
|
5152
5158
|
function o(p, d) {
|
|
5153
|
-
r[p] =
|
|
5159
|
+
r[p] = i(r[p], d, "line");
|
|
5154
5160
|
}
|
|
5155
|
-
function
|
|
5161
|
+
function i(p, d, f) {
|
|
5156
5162
|
var g;
|
|
5157
5163
|
const m = d.properties || {}, _ = d.transform || ((b) => b);
|
|
5158
5164
|
return p.tagName = d.tagName || "span", p.properties = {
|
|
@@ -5161,7 +5167,7 @@ function Ri() {
|
|
|
5161
5167
|
class: p.properties.class
|
|
5162
5168
|
}, (g = d.properties) != null && g.class && er(p, d.properties.class), p = _(p, f) || p, p;
|
|
5163
5169
|
}
|
|
5164
|
-
const
|
|
5170
|
+
const l = [], c = a.decorations.sort((p, d) => d.start.offset - p.start.offset || p.end.offset - d.end.offset);
|
|
5165
5171
|
for (const p of c) {
|
|
5166
5172
|
const { start: d, end: f } = p;
|
|
5167
5173
|
if (d.line === f.line)
|
|
@@ -5169,11 +5175,11 @@ function Ri() {
|
|
|
5169
5175
|
else if (d.line < f.line) {
|
|
5170
5176
|
s(d.line, d.character, Number.POSITIVE_INFINITY, p);
|
|
5171
5177
|
for (let m = d.line + 1; m < f.line; m++)
|
|
5172
|
-
|
|
5178
|
+
l.unshift(() => o(m, p));
|
|
5173
5179
|
s(f.line, 0, f.character, p);
|
|
5174
5180
|
}
|
|
5175
5181
|
}
|
|
5176
|
-
|
|
5182
|
+
l.forEach((p) => p());
|
|
5177
5183
|
}
|
|
5178
5184
|
};
|
|
5179
5185
|
}
|
|
@@ -5183,9 +5189,9 @@ function Ni(t) {
|
|
|
5183
5189
|
if (n.start.offset > n.end.offset)
|
|
5184
5190
|
throw new X(`Invalid decoration range: ${JSON.stringify(n.start)} - ${JSON.stringify(n.end)}`);
|
|
5185
5191
|
for (let a = e + 1; a < t.length; a++) {
|
|
5186
|
-
const r = t[a], s = n.start.offset <= r.start.offset && r.start.offset < n.end.offset, o = n.start.offset < r.end.offset && r.end.offset <= n.end.offset,
|
|
5187
|
-
if (s || o ||
|
|
5188
|
-
if (s && o ||
|
|
5192
|
+
const r = t[a], s = n.start.offset <= r.start.offset && r.start.offset < n.end.offset, o = n.start.offset < r.end.offset && r.end.offset <= n.end.offset, i = r.start.offset <= n.start.offset && n.start.offset < r.end.offset, l = r.start.offset < n.end.offset && n.end.offset <= r.end.offset;
|
|
5193
|
+
if (s || o || i || l) {
|
|
5194
|
+
if (s && o || i && l)
|
|
5189
5195
|
continue;
|
|
5190
5196
|
throw new X(`Decorations ${JSON.stringify(n.start)} and ${JSON.stringify(r.start)} intersect.`);
|
|
5191
5197
|
}
|
|
@@ -5334,17 +5340,17 @@ function Li() {
|
|
|
5334
5340
|
const r = [];
|
|
5335
5341
|
let s = 0;
|
|
5336
5342
|
do {
|
|
5337
|
-
const o = Bi(a, s),
|
|
5338
|
-
if (
|
|
5339
|
-
value:
|
|
5343
|
+
const o = Bi(a, s), i = o.sequence ? a.substring(s, o.startPosition) : a.substring(s);
|
|
5344
|
+
if (i.length > 0 && r.push({
|
|
5345
|
+
value: i,
|
|
5340
5346
|
foreground: t,
|
|
5341
5347
|
background: e,
|
|
5342
5348
|
decorations: new Set(n)
|
|
5343
5349
|
}), o.sequence) {
|
|
5344
|
-
const
|
|
5345
|
-
for (const c of
|
|
5350
|
+
const l = Ti(o.sequence);
|
|
5351
|
+
for (const c of l)
|
|
5346
5352
|
c.type === "resetAll" ? (t = null, e = null, n.clear()) : c.type === "resetForegroundColor" ? t = null : c.type === "resetBackgroundColor" ? e = null : c.type === "resetDecoration" && n.delete(c.value);
|
|
5347
|
-
for (const c of
|
|
5353
|
+
for (const c of l)
|
|
5348
5354
|
c.type === "setForegroundColor" ? t = c.value : c.type === "setBackgroundColor" ? e = c.value : c.type === "setDecoration" && n.add(c.value);
|
|
5349
5355
|
}
|
|
5350
5356
|
s = o.position;
|
|
@@ -5372,11 +5378,11 @@ var ji = {
|
|
|
5372
5378
|
brightWhite: "#ffffff"
|
|
5373
5379
|
};
|
|
5374
5380
|
function Mi(t = ji) {
|
|
5375
|
-
function e(
|
|
5376
|
-
return t[
|
|
5381
|
+
function e(i) {
|
|
5382
|
+
return t[i];
|
|
5377
5383
|
}
|
|
5378
|
-
function n(
|
|
5379
|
-
return `#${
|
|
5384
|
+
function n(i) {
|
|
5385
|
+
return `#${i.map((l) => Math.max(0, Math.min(l, 255)).toString(16).padStart(2, "0")).join("")}`;
|
|
5380
5386
|
}
|
|
5381
5387
|
let a;
|
|
5382
5388
|
function r() {
|
|
@@ -5385,27 +5391,27 @@ function Mi(t = ji) {
|
|
|
5385
5391
|
a = [];
|
|
5386
5392
|
for (let c = 0; c < Ie.length; c++)
|
|
5387
5393
|
a.push(e(Ie[c]));
|
|
5388
|
-
let
|
|
5394
|
+
let i = [0, 95, 135, 175, 215, 255];
|
|
5389
5395
|
for (let c = 0; c < 6; c++)
|
|
5390
5396
|
for (let u = 0; u < 6; u++)
|
|
5391
5397
|
for (let p = 0; p < 6; p++)
|
|
5392
|
-
a.push(n([
|
|
5393
|
-
let
|
|
5394
|
-
for (let c = 0; c < 24; c++,
|
|
5395
|
-
a.push(n([
|
|
5398
|
+
a.push(n([i[c], i[u], i[p]]));
|
|
5399
|
+
let l = 8;
|
|
5400
|
+
for (let c = 0; c < 24; c++, l += 10)
|
|
5401
|
+
a.push(n([l, l, l]));
|
|
5396
5402
|
return a;
|
|
5397
5403
|
}
|
|
5398
|
-
function s(
|
|
5399
|
-
return r()[
|
|
5404
|
+
function s(i) {
|
|
5405
|
+
return r()[i];
|
|
5400
5406
|
}
|
|
5401
|
-
function o(
|
|
5402
|
-
switch (
|
|
5407
|
+
function o(i) {
|
|
5408
|
+
switch (i.type) {
|
|
5403
5409
|
case "named":
|
|
5404
|
-
return e(
|
|
5410
|
+
return e(i.name);
|
|
5405
5411
|
case "rgb":
|
|
5406
|
-
return n(
|
|
5412
|
+
return n(i.rgb);
|
|
5407
5413
|
case "table":
|
|
5408
|
-
return s(
|
|
5414
|
+
return s(i.index);
|
|
5409
5415
|
}
|
|
5410
5416
|
}
|
|
5411
5417
|
return {
|
|
@@ -5415,23 +5421,23 @@ function Mi(t = ji) {
|
|
|
5415
5421
|
function Oi(t, e, n) {
|
|
5416
5422
|
const a = vt(t, n), r = Nt(e), s = Mi(
|
|
5417
5423
|
Object.fromEntries(
|
|
5418
|
-
Ie.map((
|
|
5419
|
-
var
|
|
5424
|
+
Ie.map((i) => {
|
|
5425
|
+
var l;
|
|
5420
5426
|
return [
|
|
5421
|
-
|
|
5422
|
-
(
|
|
5427
|
+
i,
|
|
5428
|
+
(l = t.colors) == null ? void 0 : l[`terminal.ansi${i[0].toUpperCase()}${i.substring(1)}`]
|
|
5423
5429
|
];
|
|
5424
5430
|
})
|
|
5425
5431
|
)
|
|
5426
5432
|
), o = Li();
|
|
5427
5433
|
return r.map(
|
|
5428
|
-
(
|
|
5434
|
+
(i) => o.parse(i[0]).map((l) => {
|
|
5429
5435
|
let c, u;
|
|
5430
|
-
|
|
5436
|
+
l.decorations.has("reverse") ? (c = l.background ? s.value(l.background) : t.bg, u = l.foreground ? s.value(l.foreground) : t.fg) : (c = l.foreground ? s.value(l.foreground) : t.fg, u = l.background ? s.value(l.background) : void 0), c = Ae(c, a), u = Ae(u, a), l.decorations.has("dim") && (c = Gi(c));
|
|
5431
5437
|
let p = Z.None;
|
|
5432
|
-
return
|
|
5433
|
-
content:
|
|
5434
|
-
offset:
|
|
5438
|
+
return l.decorations.has("bold") && (p |= Z.Bold), l.decorations.has("italic") && (p |= Z.Italic), l.decorations.has("underline") && (p |= Z.Underline), l.decorations.has("strikethrough") && (p |= Z.Strikethrough), {
|
|
5439
|
+
content: l.value,
|
|
5440
|
+
offset: i[1],
|
|
5435
5441
|
// TODO: more accurate offset? might need to fork ansi-sequence-parser
|
|
5436
5442
|
color: c,
|
|
5437
5443
|
bgColor: u,
|
|
@@ -5456,18 +5462,18 @@ function Sn(t, e, n = {}) {
|
|
|
5456
5462
|
theme: r = t.getLoadedThemes()[0]
|
|
5457
5463
|
} = n;
|
|
5458
5464
|
if (Cn(a) || xn(r))
|
|
5459
|
-
return Nt(e).map((
|
|
5465
|
+
return Nt(e).map((l) => [{ content: l[0], offset: l[1] }]);
|
|
5460
5466
|
const { theme: s, colorMap: o } = t.setTheme(r);
|
|
5461
5467
|
if (a === "ansi")
|
|
5462
5468
|
return Oi(s, e, n);
|
|
5463
|
-
const
|
|
5469
|
+
const i = t.getLanguage(a);
|
|
5464
5470
|
if (n.grammarState) {
|
|
5465
|
-
if (n.grammarState.lang !==
|
|
5466
|
-
throw new X(`Grammar state language "${n.grammarState.lang}" does not match highlight language "${
|
|
5471
|
+
if (n.grammarState.lang !== i.name)
|
|
5472
|
+
throw new X(`Grammar state language "${n.grammarState.lang}" does not match highlight language "${i.name}"`);
|
|
5467
5473
|
if (!n.grammarState.themes.includes(s.name))
|
|
5468
5474
|
throw new X(`Grammar state themes "${n.grammarState.themes}" do not contain highlight theme "${s.name}"`);
|
|
5469
5475
|
}
|
|
5470
|
-
return Di(e,
|
|
5476
|
+
return Di(e, i, s, o, n);
|
|
5471
5477
|
}
|
|
5472
5478
|
function Fi(...t) {
|
|
5473
5479
|
if (t.length === 2)
|
|
@@ -5480,15 +5486,15 @@ function Fi(...t) {
|
|
|
5480
5486
|
throw new X("Plain language does not have grammar state");
|
|
5481
5487
|
if (r === "ansi")
|
|
5482
5488
|
throw new X("ANSI language does not have grammar state");
|
|
5483
|
-
const { theme: o, colorMap:
|
|
5484
|
-
return new
|
|
5485
|
-
St(n,
|
|
5486
|
-
|
|
5489
|
+
const { theme: o, colorMap: i } = e.setTheme(s), l = e.getLanguage(r);
|
|
5490
|
+
return new He(
|
|
5491
|
+
St(n, l, o, i, a).stateStack,
|
|
5492
|
+
l.name,
|
|
5487
5493
|
o.name
|
|
5488
5494
|
);
|
|
5489
5495
|
}
|
|
5490
5496
|
function Di(t, e, n, a, r) {
|
|
5491
|
-
const s = St(t, e, n, a, r), o = new
|
|
5497
|
+
const s = St(t, e, n, a, r), o = new He(
|
|
5492
5498
|
St(t, e, n, a, r).stateStack,
|
|
5493
5499
|
e.name,
|
|
5494
5500
|
n.name
|
|
@@ -5498,8 +5504,8 @@ function Di(t, e, n, a, r) {
|
|
|
5498
5504
|
function St(t, e, n, a, r) {
|
|
5499
5505
|
const s = vt(n, r), {
|
|
5500
5506
|
tokenizeMaxLineLength: o = 0,
|
|
5501
|
-
tokenizeTimeLimit:
|
|
5502
|
-
} = r,
|
|
5507
|
+
tokenizeTimeLimit: i = 500
|
|
5508
|
+
} = r, l = Nt(t);
|
|
5503
5509
|
let c = r.grammarState ? Ii(r.grammarState, n.name) ?? on : r.grammarContextCode != null ? St(
|
|
5504
5510
|
r.grammarContextCode,
|
|
5505
5511
|
e,
|
|
@@ -5512,8 +5518,8 @@ function St(t, e, n, a, r) {
|
|
|
5512
5518
|
}
|
|
5513
5519
|
).stateStack : on, u = [];
|
|
5514
5520
|
const p = [];
|
|
5515
|
-
for (let d = 0, f =
|
|
5516
|
-
const [m, _] =
|
|
5521
|
+
for (let d = 0, f = l.length; d < f; d++) {
|
|
5522
|
+
const [m, _] = l[d];
|
|
5517
5523
|
if (m === "") {
|
|
5518
5524
|
u = [], p.push([]);
|
|
5519
5525
|
continue;
|
|
@@ -5528,8 +5534,8 @@ function St(t, e, n, a, r) {
|
|
|
5528
5534
|
continue;
|
|
5529
5535
|
}
|
|
5530
5536
|
let g, b, w;
|
|
5531
|
-
r.includeExplanation && (g = e.tokenizeLine(m, c,
|
|
5532
|
-
const k = e.tokenizeLine2(m, c,
|
|
5537
|
+
r.includeExplanation && (g = e.tokenizeLine(m, c, i), b = g.tokens, w = 0);
|
|
5538
|
+
const k = e.tokenizeLine2(m, c, i), v = k.tokens.length / 2;
|
|
5533
5539
|
for (let A = 0; A < v; A++) {
|
|
5534
5540
|
const O = k.tokens[2 * A], I = A + 1 < v ? k.tokens[2 * A + 2] : m.length;
|
|
5535
5541
|
if (O === I)
|
|
@@ -5537,46 +5543,46 @@ function St(t, e, n, a, r) {
|
|
|
5537
5543
|
const q = k.tokens[2 * A + 1], ce = Ae(
|
|
5538
5544
|
a[ze.getForeground(q)],
|
|
5539
5545
|
s
|
|
5540
|
-
),
|
|
5546
|
+
), x = ze.getFontStyle(q), $ = {
|
|
5541
5547
|
content: m.substring(O, I),
|
|
5542
5548
|
offset: _ + O,
|
|
5543
5549
|
color: ce,
|
|
5544
|
-
fontStyle:
|
|
5550
|
+
fontStyle: x
|
|
5545
5551
|
};
|
|
5546
5552
|
if (r.includeExplanation) {
|
|
5547
5553
|
const T = [];
|
|
5548
5554
|
if (r.includeExplanation !== "scopeName")
|
|
5549
|
-
for (const
|
|
5555
|
+
for (const W of n.settings) {
|
|
5550
5556
|
let ie;
|
|
5551
|
-
switch (typeof
|
|
5557
|
+
switch (typeof W.scope) {
|
|
5552
5558
|
case "string":
|
|
5553
|
-
ie =
|
|
5559
|
+
ie = W.scope.split(/,/).map((ye) => ye.trim());
|
|
5554
5560
|
break;
|
|
5555
5561
|
case "object":
|
|
5556
|
-
ie =
|
|
5562
|
+
ie = W.scope;
|
|
5557
5563
|
break;
|
|
5558
5564
|
default:
|
|
5559
5565
|
continue;
|
|
5560
5566
|
}
|
|
5561
5567
|
T.push({
|
|
5562
|
-
settings:
|
|
5563
|
-
selectors: ie.map((
|
|
5568
|
+
settings: W,
|
|
5569
|
+
selectors: ie.map((ye) => ye.split(/ /))
|
|
5564
5570
|
});
|
|
5565
5571
|
}
|
|
5566
5572
|
$.explanation = [];
|
|
5567
5573
|
let ue = 0;
|
|
5568
5574
|
for (; O + ue < I; ) {
|
|
5569
|
-
const
|
|
5570
|
-
|
|
5571
|
-
|
|
5575
|
+
const W = b[w], ie = m.substring(
|
|
5576
|
+
W.startIndex,
|
|
5577
|
+
W.endIndex
|
|
5572
5578
|
);
|
|
5573
5579
|
ue += ie.length, $.explanation.push({
|
|
5574
5580
|
content: ie,
|
|
5575
5581
|
scopes: r.includeExplanation === "scopeName" ? Ui(
|
|
5576
|
-
|
|
5582
|
+
W.scopes
|
|
5577
5583
|
) : zi(
|
|
5578
5584
|
T,
|
|
5579
|
-
|
|
5585
|
+
W.scopes
|
|
5580
5586
|
)
|
|
5581
5587
|
}), w += 1;
|
|
5582
5588
|
}
|
|
@@ -5599,7 +5605,7 @@ function zi(t, e) {
|
|
|
5599
5605
|
const s = e[a];
|
|
5600
5606
|
n[a] = {
|
|
5601
5607
|
scopeName: s,
|
|
5602
|
-
themeMatches:
|
|
5608
|
+
themeMatches: Hi(t, s, e.slice(0, a))
|
|
5603
5609
|
};
|
|
5604
5610
|
}
|
|
5605
5611
|
return n;
|
|
@@ -5615,7 +5621,7 @@ function qi(t, e, n) {
|
|
|
5615
5621
|
Yn(t[a], n[r]) && (a -= 1), r -= 1;
|
|
5616
5622
|
return a === -1;
|
|
5617
5623
|
}
|
|
5618
|
-
function
|
|
5624
|
+
function Hi(t, e, n) {
|
|
5619
5625
|
const a = [];
|
|
5620
5626
|
for (const { selectors: r, settings: s } of t)
|
|
5621
5627
|
for (const o of r)
|
|
@@ -5626,20 +5632,20 @@ function Wi(t, e, n) {
|
|
|
5626
5632
|
return a;
|
|
5627
5633
|
}
|
|
5628
5634
|
function ar(t, e, n) {
|
|
5629
|
-
const a = Object.entries(n.themes).filter((
|
|
5635
|
+
const a = Object.entries(n.themes).filter((l) => l[1]).map((l) => ({ color: l[0], theme: l[1] })), r = a.map((l) => {
|
|
5630
5636
|
const c = Sn(t, e, {
|
|
5631
5637
|
...n,
|
|
5632
|
-
theme:
|
|
5633
|
-
}), u = nt(c), p = typeof
|
|
5638
|
+
theme: l.theme
|
|
5639
|
+
}), u = nt(c), p = typeof l.theme == "string" ? l.theme : l.theme.name;
|
|
5634
5640
|
return {
|
|
5635
5641
|
tokens: c,
|
|
5636
5642
|
state: u,
|
|
5637
5643
|
theme: p
|
|
5638
5644
|
};
|
|
5639
|
-
}), s =
|
|
5640
|
-
...r.map((
|
|
5645
|
+
}), s = Wi(
|
|
5646
|
+
...r.map((l) => l.tokens)
|
|
5641
5647
|
), o = s[0].map(
|
|
5642
|
-
(
|
|
5648
|
+
(l, c) => l.map((u, p) => {
|
|
5643
5649
|
const d = {
|
|
5644
5650
|
content: u.content,
|
|
5645
5651
|
variants: {},
|
|
@@ -5655,32 +5661,32 @@ function ar(t, e, n) {
|
|
|
5655
5661
|
d.variants[a[m].color] = w;
|
|
5656
5662
|
}), d;
|
|
5657
5663
|
})
|
|
5658
|
-
),
|
|
5659
|
-
Object.fromEntries(r.map((
|
|
5664
|
+
), i = r[0].state ? new He(
|
|
5665
|
+
Object.fromEntries(r.map((l) => {
|
|
5660
5666
|
var c;
|
|
5661
|
-
return [
|
|
5667
|
+
return [l.theme, (c = l.state) == null ? void 0 : c.getInternalStack(l.theme)];
|
|
5662
5668
|
})),
|
|
5663
5669
|
r[0].state.lang
|
|
5664
5670
|
) : void 0;
|
|
5665
|
-
return
|
|
5671
|
+
return i && Pt(o, i), o;
|
|
5666
5672
|
}
|
|
5667
|
-
function
|
|
5673
|
+
function Wi(...t) {
|
|
5668
5674
|
const e = t.map(() => []), n = t.length;
|
|
5669
5675
|
for (let a = 0; a < t[0].length; a++) {
|
|
5670
|
-
const r = t.map((
|
|
5671
|
-
e.forEach((
|
|
5672
|
-
const o = r.map(() => 0),
|
|
5673
|
-
for (;
|
|
5674
|
-
const
|
|
5676
|
+
const r = t.map((l) => l[a]), s = e.map(() => []);
|
|
5677
|
+
e.forEach((l, c) => l.push(s[c]));
|
|
5678
|
+
const o = r.map(() => 0), i = r.map((l) => l[0]);
|
|
5679
|
+
for (; i.every((l) => l); ) {
|
|
5680
|
+
const l = Math.min(...i.map((c) => c.content.length));
|
|
5675
5681
|
for (let c = 0; c < n; c++) {
|
|
5676
|
-
const u =
|
|
5677
|
-
u.content.length ===
|
|
5682
|
+
const u = i[c];
|
|
5683
|
+
u.content.length === l ? (s[c].push(u), o[c] += 1, i[c] = r[c][o[c]]) : (s[c].push({
|
|
5678
5684
|
...u,
|
|
5679
|
-
content: u.content.slice(0,
|
|
5680
|
-
}),
|
|
5685
|
+
content: u.content.slice(0, l)
|
|
5686
|
+
}), i[c] = {
|
|
5681
5687
|
...u,
|
|
5682
|
-
content: u.content.slice(
|
|
5683
|
-
offset: u.offset +
|
|
5688
|
+
content: u.content.slice(l),
|
|
5689
|
+
offset: u.offset + l
|
|
5684
5690
|
});
|
|
5685
5691
|
}
|
|
5686
5692
|
}
|
|
@@ -5688,7 +5694,7 @@ function Hi(...t) {
|
|
|
5688
5694
|
return e;
|
|
5689
5695
|
}
|
|
5690
5696
|
function Et(t, e, n) {
|
|
5691
|
-
let a, r, s, o,
|
|
5697
|
+
let a, r, s, o, i, l;
|
|
5692
5698
|
if ("themes" in n) {
|
|
5693
5699
|
const {
|
|
5694
5700
|
defaultColor: c = "light",
|
|
@@ -5701,12 +5707,12 @@ function Et(t, e, n) {
|
|
|
5701
5707
|
e,
|
|
5702
5708
|
n
|
|
5703
5709
|
);
|
|
5704
|
-
if (
|
|
5710
|
+
if (l = nt(d), c && !p.find((g) => g.color === c))
|
|
5705
5711
|
throw new X(`\`themes\` option must contain the defaultColor key \`${c}\``);
|
|
5706
5712
|
const f = p.map((g) => t.getTheme(g.theme)), m = p.map((g) => g.color);
|
|
5707
|
-
s = d.map((g) => g.map((b) => Ei(b, m, u, c))),
|
|
5713
|
+
s = d.map((g) => g.map((b) => Ei(b, m, u, c))), l && Pt(s, l);
|
|
5708
5714
|
const _ = p.map((g) => vt(g.theme, n));
|
|
5709
|
-
r = p.map((g, b) => (b === 0 && c ? "" : `${u + g.color}:`) + (Ae(f[b].fg, _[b]) || "inherit")).join(";"), a = p.map((g, b) => (b === 0 && c ? "" : `${u + g.color}-bg:`) + (Ae(f[b].bg, _[b]) || "inherit")).join(";"), o = `shiki-themes ${f.map((g) => g.name).join(" ")}`,
|
|
5715
|
+
r = p.map((g, b) => (b === 0 && c ? "" : `${u + g.color}:`) + (Ae(f[b].fg, _[b]) || "inherit")).join(";"), a = p.map((g, b) => (b === 0 && c ? "" : `${u + g.color}-bg:`) + (Ae(f[b].bg, _[b]) || "inherit")).join(";"), o = `shiki-themes ${f.map((g) => g.name).join(" ")}`, i = c ? void 0 : [r, a].join(";");
|
|
5710
5716
|
} else if ("theme" in n) {
|
|
5711
5717
|
const c = vt(n.theme, n);
|
|
5712
5718
|
s = Sn(
|
|
@@ -5715,7 +5721,7 @@ function Et(t, e, n) {
|
|
|
5715
5721
|
n
|
|
5716
5722
|
);
|
|
5717
5723
|
const u = t.getTheme(n.theme);
|
|
5718
|
-
a = Ae(u.bg, c), r = Ae(u.fg, c), o = u.name,
|
|
5724
|
+
a = Ae(u.bg, c), r = Ae(u.fg, c), o = u.name, l = nt(s);
|
|
5719
5725
|
} else
|
|
5720
5726
|
throw new X("Invalid options, either `theme` or `themes` must be provided");
|
|
5721
5727
|
return {
|
|
@@ -5723,8 +5729,8 @@ function Et(t, e, n) {
|
|
|
5723
5729
|
fg: r,
|
|
5724
5730
|
bg: a,
|
|
5725
5731
|
themeName: o,
|
|
5726
|
-
rootStyle:
|
|
5727
|
-
grammarState:
|
|
5732
|
+
rootStyle: i,
|
|
5733
|
+
grammarState: l
|
|
5728
5734
|
};
|
|
5729
5735
|
}
|
|
5730
5736
|
function At(t, e, n, a = {
|
|
@@ -5740,8 +5746,8 @@ function At(t, e, n, a = {
|
|
|
5740
5746
|
let {
|
|
5741
5747
|
tokens: s,
|
|
5742
5748
|
fg: o,
|
|
5743
|
-
bg:
|
|
5744
|
-
themeName:
|
|
5749
|
+
bg: i,
|
|
5750
|
+
themeName: l,
|
|
5745
5751
|
rootStyle: c,
|
|
5746
5752
|
grammarState: u
|
|
5747
5753
|
} = Et(t, r, n);
|
|
@@ -5763,8 +5769,8 @@ function At(t, e, n, a = {
|
|
|
5763
5769
|
{
|
|
5764
5770
|
...n,
|
|
5765
5771
|
fg: o,
|
|
5766
|
-
bg:
|
|
5767
|
-
themeName:
|
|
5772
|
+
bg: i,
|
|
5773
|
+
themeName: l,
|
|
5768
5774
|
rootStyle: c
|
|
5769
5775
|
},
|
|
5770
5776
|
f,
|
|
@@ -5777,8 +5783,8 @@ function Vi(t, e, n, a = nt(t)) {
|
|
|
5777
5783
|
type: "root",
|
|
5778
5784
|
children: []
|
|
5779
5785
|
}, {
|
|
5780
|
-
structure:
|
|
5781
|
-
tabindex:
|
|
5786
|
+
structure: i = "classic",
|
|
5787
|
+
tabindex: l = "0"
|
|
5782
5788
|
} = e;
|
|
5783
5789
|
let c = {
|
|
5784
5790
|
type: "element",
|
|
@@ -5786,8 +5792,8 @@ function Vi(t, e, n, a = nt(t)) {
|
|
|
5786
5792
|
properties: {
|
|
5787
5793
|
class: `shiki ${e.themeName || ""}`,
|
|
5788
5794
|
style: e.rootStyle || `background-color:${e.bg};color:${e.fg}`,
|
|
5789
|
-
...
|
|
5790
|
-
tabindex:
|
|
5795
|
+
...l !== !1 && l != null ? {
|
|
5796
|
+
tabindex: l.toString()
|
|
5791
5797
|
} : {},
|
|
5792
5798
|
...Object.fromEntries(
|
|
5793
5799
|
Array.from(
|
|
@@ -5804,7 +5810,7 @@ function Vi(t, e, n, a = nt(t)) {
|
|
|
5804
5810
|
};
|
|
5805
5811
|
const p = [], d = {
|
|
5806
5812
|
...n,
|
|
5807
|
-
structure:
|
|
5813
|
+
structure: i,
|
|
5808
5814
|
addClassToHast: er,
|
|
5809
5815
|
get source() {
|
|
5810
5816
|
return n.source;
|
|
@@ -5830,7 +5836,7 @@ function Vi(t, e, n, a = nt(t)) {
|
|
|
5830
5836
|
};
|
|
5831
5837
|
if (t.forEach((b, w) => {
|
|
5832
5838
|
var A, O;
|
|
5833
|
-
w && (
|
|
5839
|
+
w && (i === "inline" ? o.children.push({ type: "element", tagName: "br", properties: {}, children: [] }) : i === "classic" && s.push({ type: "text", value: `
|
|
5834
5840
|
` }));
|
|
5835
5841
|
let k = {
|
|
5836
5842
|
type: "element",
|
|
@@ -5849,16 +5855,16 @@ function Vi(t, e, n, a = nt(t)) {
|
|
|
5849
5855
|
};
|
|
5850
5856
|
const ce = dn(I.htmlStyle || Ct(I));
|
|
5851
5857
|
ce && (q.properties.style = ce);
|
|
5852
|
-
for (const
|
|
5853
|
-
q = ((A =
|
|
5854
|
-
|
|
5858
|
+
for (const x of r)
|
|
5859
|
+
q = ((A = x == null ? void 0 : x.span) == null ? void 0 : A.call(d, q, w + 1, v, k, I)) || q;
|
|
5860
|
+
i === "inline" ? o.children.push(q) : i === "classic" && k.children.push(q), v += I.content.length;
|
|
5855
5861
|
}
|
|
5856
|
-
if (
|
|
5862
|
+
if (i === "classic") {
|
|
5857
5863
|
for (const I of r)
|
|
5858
5864
|
k = ((O = I == null ? void 0 : I.line) == null ? void 0 : O.call(d, k, w + 1)) || k;
|
|
5859
5865
|
p.push(k), s.push(k);
|
|
5860
5866
|
}
|
|
5861
|
-
}),
|
|
5867
|
+
}), i === "classic") {
|
|
5862
5868
|
for (const b of r)
|
|
5863
5869
|
u = ((m = b == null ? void 0 : b.code) == null ? void 0 : m.call(d, u)) || u;
|
|
5864
5870
|
c.children.push(u);
|
|
@@ -5876,8 +5882,8 @@ function Xi(t) {
|
|
|
5876
5882
|
const n = [];
|
|
5877
5883
|
let a = "", r = 0;
|
|
5878
5884
|
return e.forEach((s, o) => {
|
|
5879
|
-
const
|
|
5880
|
-
|
|
5885
|
+
const l = !(s.fontStyle && (s.fontStyle & Z.Underline || s.fontStyle & Z.Strikethrough));
|
|
5886
|
+
l && s.content.match(/^\s+$/) && e[o + 1] ? (r || (r = s.offset), a += s.content) : a ? (l ? n.push({
|
|
5881
5887
|
...s,
|
|
5882
5888
|
offset: r,
|
|
5883
5889
|
content: a + s.content
|
|
@@ -5901,18 +5907,18 @@ function Zi(t) {
|
|
|
5901
5907
|
const [, r, s, o] = a;
|
|
5902
5908
|
if (!r && !o)
|
|
5903
5909
|
return n;
|
|
5904
|
-
const
|
|
5910
|
+
const i = [{
|
|
5905
5911
|
...n,
|
|
5906
5912
|
offset: n.offset + r.length,
|
|
5907
5913
|
content: s
|
|
5908
5914
|
}];
|
|
5909
|
-
return r &&
|
|
5915
|
+
return r && i.unshift({
|
|
5910
5916
|
content: r,
|
|
5911
5917
|
offset: n.offset
|
|
5912
|
-
}), o &&
|
|
5918
|
+
}), o && i.push({
|
|
5913
5919
|
content: o,
|
|
5914
5920
|
offset: n.offset + r.length + s.length
|
|
5915
|
-
}),
|
|
5921
|
+
}), i;
|
|
5916
5922
|
}));
|
|
5917
5923
|
}
|
|
5918
5924
|
function Ki(t) {
|
|
@@ -5923,8 +5929,8 @@ function Ki(t) {
|
|
|
5923
5929
|
n.push({ ...a });
|
|
5924
5930
|
continue;
|
|
5925
5931
|
}
|
|
5926
|
-
const r = n[n.length - 1], s = r.htmlStyle || dn(Ct(r)), o = a.htmlStyle || dn(Ct(a)),
|
|
5927
|
-
!
|
|
5932
|
+
const r = n[n.length - 1], s = r.htmlStyle || dn(Ct(r)), o = a.htmlStyle || dn(Ct(a)), i = r.fontStyle && (r.fontStyle & Z.Underline || r.fontStyle & Z.Strikethrough), l = a.fontStyle && (a.fontStyle & Z.Underline || a.fontStyle & Z.Strikethrough);
|
|
5933
|
+
!i && !l && s === o ? r.content += a.content : n.push({ ...a });
|
|
5928
5934
|
}
|
|
5929
5935
|
return n;
|
|
5930
5936
|
});
|
|
@@ -5935,8 +5941,8 @@ function Qi(t, e, n) {
|
|
|
5935
5941
|
const a = {
|
|
5936
5942
|
meta: {},
|
|
5937
5943
|
options: n,
|
|
5938
|
-
codeToHast: (o,
|
|
5939
|
-
codeToTokens: (o,
|
|
5944
|
+
codeToHast: (o, i) => At(t, o, i),
|
|
5945
|
+
codeToTokens: (o, i) => Et(t, o, i)
|
|
5940
5946
|
};
|
|
5941
5947
|
let r = Ji(At(t, e, n, a));
|
|
5942
5948
|
for (const o of xt(n))
|
|
@@ -5945,7 +5951,7 @@ function Qi(t, e, n) {
|
|
|
5945
5951
|
}
|
|
5946
5952
|
const ea = { light: "#333333", dark: "#bbbbbb" }, ta = { light: "#fffffe", dark: "#1e1e1e" }, na = "__shiki_resolved";
|
|
5947
5953
|
function En(t) {
|
|
5948
|
-
var
|
|
5954
|
+
var i, l, c, u, p;
|
|
5949
5955
|
if (t != null && t[na])
|
|
5950
5956
|
return t;
|
|
5951
5957
|
const e = {
|
|
@@ -5955,7 +5961,7 @@ function En(t) {
|
|
|
5955
5961
|
let { bg: n, fg: a } = e;
|
|
5956
5962
|
if (!n || !a) {
|
|
5957
5963
|
const d = e.settings ? e.settings.find((f) => !f.name && !f.scope) : void 0;
|
|
5958
|
-
(
|
|
5964
|
+
(i = d == null ? void 0 : d.settings) != null && i.foreground && (a = d.settings.foreground), (l = d == null ? void 0 : d.settings) != null && l.background && (n = d.settings.background), !a && ((c = e == null ? void 0 : e.colors) != null && c["editor.foreground"]) && (a = e.colors["editor.foreground"]), !n && ((u = e == null ? void 0 : e.colors) != null && u["editor.background"]) && (n = e.colors["editor.background"]), a || (a = e.type === "light" ? ea.light : ea.dark), n || (n = e.type === "light" ? ta.light : ta.dark), e.fg = a, e.bg = n;
|
|
5959
5965
|
}
|
|
5960
5966
|
e.settings[0] && e.settings[0].settings && !e.settings[0].scope || e.settings.unshift({
|
|
5961
5967
|
settings: {
|
|
@@ -6069,7 +6075,7 @@ class tl extends ao {
|
|
|
6069
6075
|
return this._resolvedGrammars.get(n);
|
|
6070
6076
|
}
|
|
6071
6077
|
loadLanguage(n) {
|
|
6072
|
-
var o,
|
|
6078
|
+
var o, i, l, c;
|
|
6073
6079
|
if (this.getGrammar(n.name))
|
|
6074
6080
|
return;
|
|
6075
6081
|
const a = new Set(
|
|
@@ -6089,7 +6095,7 @@ class tl extends ao {
|
|
|
6089
6095
|
this._alias[u] = n.name;
|
|
6090
6096
|
}), this._loadedLanguagesCache = null, a.size)
|
|
6091
6097
|
for (const u of a)
|
|
6092
|
-
this._resolvedGrammars.delete(u.name), this._loadedLanguagesCache = null, (
|
|
6098
|
+
this._resolvedGrammars.delete(u.name), this._loadedLanguagesCache = null, (i = (o = this._syncRegistry) == null ? void 0 : o._injectionGrammars) == null || i.delete(u.scopeName), (c = (l = this._syncRegistry) == null ? void 0 : l._grammars) == null || c.delete(u.scopeName), this.loadLanguage(this._langMap.get(u.name));
|
|
6093
6099
|
}
|
|
6094
6100
|
dispose() {
|
|
6095
6101
|
super.dispose(), this._resolvedThemes.clear(), this._resolvedGrammars.clear(), this._langMap.clear(), this._langGraph.clear(), this._loadedThemesCache = null;
|
|
@@ -6099,9 +6105,9 @@ class tl extends ao {
|
|
|
6099
6105
|
this.resolveEmbeddedLanguages(s);
|
|
6100
6106
|
const a = Array.from(this._langGraph.entries()), r = a.filter(([s, o]) => !o);
|
|
6101
6107
|
if (r.length) {
|
|
6102
|
-
const s = a.filter(([o,
|
|
6103
|
-
var
|
|
6104
|
-
return
|
|
6108
|
+
const s = a.filter(([o, i]) => {
|
|
6109
|
+
var l;
|
|
6110
|
+
return i && ((l = i.embeddedLangs) == null ? void 0 : l.some((c) => r.map(([u]) => u).includes(c)));
|
|
6105
6111
|
}).filter((o) => !r.includes(o));
|
|
6106
6112
|
throw new Fe(`Missing languages ${r.map(([o]) => `\`${o}\``).join(", ")}, required by ${s.map(([o]) => `\`${o}\``).join(", ")}`);
|
|
6107
6113
|
}
|
|
@@ -6166,14 +6172,14 @@ function al(t) {
|
|
|
6166
6172
|
throw new Fe("`engine` option is required for synchronous mode");
|
|
6167
6173
|
const n = (t.langs || []).flat(1), a = (t.themes || []).flat(1).map(En), r = new nl(t.engine, n), s = new tl(r, a, n, t.langAlias);
|
|
6168
6174
|
let o;
|
|
6169
|
-
function
|
|
6175
|
+
function i(w) {
|
|
6170
6176
|
g();
|
|
6171
6177
|
const k = s.getGrammar(typeof w == "string" ? w : w.name);
|
|
6172
6178
|
if (!k)
|
|
6173
6179
|
throw new Fe(`Language \`${w}\` not found, you may need to load it first`);
|
|
6174
6180
|
return k;
|
|
6175
6181
|
}
|
|
6176
|
-
function
|
|
6182
|
+
function l(w) {
|
|
6177
6183
|
if (w === "none")
|
|
6178
6184
|
return { bg: "", fg: "", name: "none", settings: [], type: "dark" };
|
|
6179
6185
|
g();
|
|
@@ -6184,7 +6190,7 @@ function al(t) {
|
|
|
6184
6190
|
}
|
|
6185
6191
|
function c(w) {
|
|
6186
6192
|
g();
|
|
6187
|
-
const k =
|
|
6193
|
+
const k = l(w);
|
|
6188
6194
|
o !== w && (s.setTheme(k), o = w);
|
|
6189
6195
|
const v = s.getColorMap();
|
|
6190
6196
|
return {
|
|
@@ -6221,8 +6227,8 @@ function al(t) {
|
|
|
6221
6227
|
}
|
|
6222
6228
|
return {
|
|
6223
6229
|
setTheme: c,
|
|
6224
|
-
getTheme:
|
|
6225
|
-
getLanguage:
|
|
6230
|
+
getTheme: l,
|
|
6231
|
+
getLanguage: i,
|
|
6226
6232
|
getLoadedThemes: u,
|
|
6227
6233
|
getLoadedLanguages: p,
|
|
6228
6234
|
loadLanguage: f,
|
|
@@ -6269,19 +6275,19 @@ async function sl(t) {
|
|
|
6269
6275
|
const ol = Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#f9826c","activityBar.background":"#24292e","activityBar.border":"#1b1f23","activityBar.foreground":"#e1e4e8","activityBar.inactiveForeground":"#6a737d","activityBarBadge.background":"#0366d6","activityBarBadge.foreground":"#fff","badge.background":"#044289","badge.foreground":"#c8e1ff","breadcrumb.activeSelectionForeground":"#d1d5da","breadcrumb.focusForeground":"#e1e4e8","breadcrumb.foreground":"#959da5","breadcrumbPicker.background":"#2b3036","button.background":"#176f2c","button.foreground":"#dcffe4","button.hoverBackground":"#22863a","button.secondaryBackground":"#444d56","button.secondaryForeground":"#fff","button.secondaryHoverBackground":"#586069","checkbox.background":"#444d56","checkbox.border":"#1b1f23","debugToolBar.background":"#2b3036","descriptionForeground":"#959da5","diffEditor.insertedTextBackground":"#28a74530","diffEditor.removedTextBackground":"#d73a4930","dropdown.background":"#2f363d","dropdown.border":"#1b1f23","dropdown.foreground":"#e1e4e8","dropdown.listBackground":"#24292e","editor.background":"#24292e","editor.findMatchBackground":"#ffd33d44","editor.findMatchHighlightBackground":"#ffd33d22","editor.focusedStackFrameHighlightBackground":"#2b6a3033","editor.foldBackground":"#58606915","editor.foreground":"#e1e4e8","editor.inactiveSelectionBackground":"#3392FF22","editor.lineHighlightBackground":"#2b3036","editor.linkedEditingBackground":"#3392FF22","editor.selectionBackground":"#3392FF44","editor.selectionHighlightBackground":"#17E5E633","editor.selectionHighlightBorder":"#17E5E600","editor.stackFrameHighlightBackground":"#C6902625","editor.wordHighlightBackground":"#17E5E600","editor.wordHighlightBorder":"#17E5E699","editor.wordHighlightStrongBackground":"#17E5E600","editor.wordHighlightStrongBorder":"#17E5E666","editorBracketHighlight.foreground1":"#79b8ff","editorBracketHighlight.foreground2":"#ffab70","editorBracketHighlight.foreground3":"#b392f0","editorBracketHighlight.foreground4":"#79b8ff","editorBracketHighlight.foreground5":"#ffab70","editorBracketHighlight.foreground6":"#b392f0","editorBracketMatch.background":"#17E5E650","editorBracketMatch.border":"#17E5E600","editorCursor.foreground":"#c8e1ff","editorError.foreground":"#f97583","editorGroup.border":"#1b1f23","editorGroupHeader.tabsBackground":"#1f2428","editorGroupHeader.tabsBorder":"#1b1f23","editorGutter.addedBackground":"#28a745","editorGutter.deletedBackground":"#ea4a5a","editorGutter.modifiedBackground":"#2188ff","editorIndentGuide.activeBackground":"#444d56","editorIndentGuide.background":"#2f363d","editorLineNumber.activeForeground":"#e1e4e8","editorLineNumber.foreground":"#444d56","editorOverviewRuler.border":"#1b1f23","editorWarning.foreground":"#ffea7f","editorWhitespace.foreground":"#444d56","editorWidget.background":"#1f2428","errorForeground":"#f97583","focusBorder":"#005cc5","foreground":"#d1d5da","gitDecoration.addedResourceForeground":"#34d058","gitDecoration.conflictingResourceForeground":"#ffab70","gitDecoration.deletedResourceForeground":"#ea4a5a","gitDecoration.ignoredResourceForeground":"#6a737d","gitDecoration.modifiedResourceForeground":"#79b8ff","gitDecoration.submoduleResourceForeground":"#6a737d","gitDecoration.untrackedResourceForeground":"#34d058","input.background":"#2f363d","input.border":"#1b1f23","input.foreground":"#e1e4e8","input.placeholderForeground":"#959da5","list.activeSelectionBackground":"#39414a","list.activeSelectionForeground":"#e1e4e8","list.focusBackground":"#044289","list.hoverBackground":"#282e34","list.hoverForeground":"#e1e4e8","list.inactiveFocusBackground":"#1d2d3e","list.inactiveSelectionBackground":"#282e34","list.inactiveSelectionForeground":"#e1e4e8","notificationCenterHeader.background":"#24292e","notificationCenterHeader.foreground":"#959da5","notifications.background":"#2f363d","notifications.border":"#1b1f23","notifications.foreground":"#e1e4e8","notificationsErrorIcon.foreground":"#ea4a5a","notificationsInfoIcon.foreground":"#79b8ff","notificationsWarningIcon.foreground":"#ffab70","panel.background":"#1f2428","panel.border":"#1b1f23","panelInput.border":"#2f363d","panelTitle.activeBorder":"#f9826c","panelTitle.activeForeground":"#e1e4e8","panelTitle.inactiveForeground":"#959da5","peekViewEditor.background":"#1f242888","peekViewEditor.matchHighlightBackground":"#ffd33d33","peekViewResult.background":"#1f2428","peekViewResult.matchHighlightBackground":"#ffd33d33","pickerGroup.border":"#444d56","pickerGroup.foreground":"#e1e4e8","progressBar.background":"#0366d6","quickInput.background":"#24292e","quickInput.foreground":"#e1e4e8","scrollbar.shadow":"#0008","scrollbarSlider.activeBackground":"#6a737d88","scrollbarSlider.background":"#6a737d33","scrollbarSlider.hoverBackground":"#6a737d44","settings.headerForeground":"#e1e4e8","settings.modifiedItemIndicator":"#0366d6","sideBar.background":"#1f2428","sideBar.border":"#1b1f23","sideBar.foreground":"#d1d5da","sideBarSectionHeader.background":"#1f2428","sideBarSectionHeader.border":"#1b1f23","sideBarSectionHeader.foreground":"#e1e4e8","sideBarTitle.foreground":"#e1e4e8","statusBar.background":"#24292e","statusBar.border":"#1b1f23","statusBar.debuggingBackground":"#931c06","statusBar.debuggingForeground":"#fff","statusBar.foreground":"#d1d5da","statusBar.noFolderBackground":"#24292e","statusBarItem.prominentBackground":"#282e34","statusBarItem.remoteBackground":"#24292e","statusBarItem.remoteForeground":"#d1d5da","tab.activeBackground":"#24292e","tab.activeBorder":"#24292e","tab.activeBorderTop":"#f9826c","tab.activeForeground":"#e1e4e8","tab.border":"#1b1f23","tab.hoverBackground":"#24292e","tab.inactiveBackground":"#1f2428","tab.inactiveForeground":"#959da5","tab.unfocusedActiveBorder":"#24292e","tab.unfocusedActiveBorderTop":"#1b1f23","tab.unfocusedHoverBackground":"#24292e","terminal.ansiBlack":"#586069","terminal.ansiBlue":"#2188ff","terminal.ansiBrightBlack":"#959da5","terminal.ansiBrightBlue":"#79b8ff","terminal.ansiBrightCyan":"#56d4dd","terminal.ansiBrightGreen":"#85e89d","terminal.ansiBrightMagenta":"#b392f0","terminal.ansiBrightRed":"#f97583","terminal.ansiBrightWhite":"#fafbfc","terminal.ansiBrightYellow":"#ffea7f","terminal.ansiCyan":"#39c5cf","terminal.ansiGreen":"#34d058","terminal.ansiMagenta":"#b392f0","terminal.ansiRed":"#ea4a5a","terminal.ansiWhite":"#d1d5da","terminal.ansiYellow":"#ffea7f","terminal.foreground":"#d1d5da","terminal.tab.activeBorder":"#f9826c","terminalCursor.background":"#586069","terminalCursor.foreground":"#79b8ff","textBlockQuote.background":"#24292e","textBlockQuote.border":"#444d56","textCodeBlock.background":"#2f363d","textLink.activeForeground":"#c8e1ff","textLink.foreground":"#79b8ff","textPreformat.foreground":"#d1d5da","textSeparator.foreground":"#586069","titleBar.activeBackground":"#24292e","titleBar.activeForeground":"#e1e4e8","titleBar.border":"#1b1f23","titleBar.inactiveBackground":"#1f2428","titleBar.inactiveForeground":"#959da5","tree.indentGuidesStroke":"#2f363d","welcomePage.buttonBackground":"#2f363d","welcomePage.buttonHoverBackground":"#444d56"},"displayName":"GitHub Dark","name":"github-dark","semanticHighlighting":true,"tokenColors":[{"scope":["comment","punctuation.definition.comment","string.comment"],"settings":{"foreground":"#6a737d"}},{"scope":["constant","entity.name.constant","variable.other.constant","variable.other.enummember","variable.language"],"settings":{"foreground":"#79b8ff"}},{"scope":["entity","entity.name"],"settings":{"foreground":"#b392f0"}},{"scope":"variable.parameter.function","settings":{"foreground":"#e1e4e8"}},{"scope":"entity.name.tag","settings":{"foreground":"#85e89d"}},{"scope":"keyword","settings":{"foreground":"#f97583"}},{"scope":["storage","storage.type"],"settings":{"foreground":"#f97583"}},{"scope":["storage.modifier.package","storage.modifier.import","storage.type.java"],"settings":{"foreground":"#e1e4e8"}},{"scope":["string","punctuation.definition.string","string punctuation.section.embedded source"],"settings":{"foreground":"#9ecbff"}},{"scope":"support","settings":{"foreground":"#79b8ff"}},{"scope":"meta.property-name","settings":{"foreground":"#79b8ff"}},{"scope":"variable","settings":{"foreground":"#ffab70"}},{"scope":"variable.other","settings":{"foreground":"#e1e4e8"}},{"scope":"invalid.broken","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"invalid.deprecated","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"invalid.illegal","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"invalid.unimplemented","settings":{"fontStyle":"italic","foreground":"#fdaeb7"}},{"scope":"carriage-return","settings":{"background":"#f97583","content":"^M","fontStyle":"italic underline","foreground":"#24292e"}},{"scope":"message.error","settings":{"foreground":"#fdaeb7"}},{"scope":"string variable","settings":{"foreground":"#79b8ff"}},{"scope":["source.regexp","string.regexp"],"settings":{"foreground":"#dbedff"}},{"scope":["string.regexp.character-class","string.regexp constant.character.escape","string.regexp source.ruby.embedded","string.regexp string.regexp.arbitrary-repitition"],"settings":{"foreground":"#dbedff"}},{"scope":"string.regexp constant.character.escape","settings":{"fontStyle":"bold","foreground":"#85e89d"}},{"scope":"support.constant","settings":{"foreground":"#79b8ff"}},{"scope":"support.variable","settings":{"foreground":"#79b8ff"}},{"scope":"meta.module-reference","settings":{"foreground":"#79b8ff"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#ffab70"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#79b8ff"}},{"scope":"markup.quote","settings":{"foreground":"#85e89d"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#e1e4e8"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#e1e4e8"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["markup.strikethrough"],"settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inline.raw","settings":{"foreground":"#79b8ff"}},{"scope":["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],"settings":{"background":"#86181d","foreground":"#fdaeb7"}},{"scope":["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],"settings":{"background":"#144620","foreground":"#85e89d"}},{"scope":["markup.changed","punctuation.definition.changed"],"settings":{"background":"#c24e00","foreground":"#ffab70"}},{"scope":["markup.ignored","markup.untracked"],"settings":{"background":"#79b8ff","foreground":"#2f363d"}},{"scope":"meta.diff.range","settings":{"fontStyle":"bold","foreground":"#b392f0"}},{"scope":"meta.diff.header","settings":{"foreground":"#79b8ff"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#79b8ff"}},{"scope":"meta.output","settings":{"foreground":"#79b8ff"}},{"scope":["brackethighlighter.tag","brackethighlighter.curly","brackethighlighter.round","brackethighlighter.square","brackethighlighter.angle","brackethighlighter.quote"],"settings":{"foreground":"#d1d5da"}},{"scope":"brackethighlighter.unmatched","settings":{"foreground":"#fdaeb7"}},{"scope":["constant.other.reference.link","string.other.link"],"settings":{"fontStyle":"underline","foreground":"#dbedff"}}],"type":"dark"}')), il = Object.freeze(JSON.parse('{"displayName":"TypeScript","name":"typescript","patterns":[{"include":"#directives"},{"include":"#statements"},{"include":"#shebang"}],"repository":{"access-modifier":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(abstract|declare|override|public|protected|private|readonly|static)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"},"after-operator-block-as-object-literal":{"begin":"(?<!\\\\+\\\\+|--)(?<=[!(+,:=>?\\\\[]|^await|[^$._[:alnum:]]await|^return|[^$._[:alnum:]]return|^yield|[^$._[:alnum:]]yield|^throw|[^$._[:alnum:]]throw|^in|[^$._[:alnum:]]in|^of|[^$._[:alnum:]]of|^typeof|[^$._[:alnum:]]typeof|&&|\\\\|\\\\||\\\\*)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.objectliteral.ts","patterns":[{"include":"#object-member"}]},"array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element"},{"include":"#punctuation-comma"}]},"array-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element-const"},{"include":"#punctuation-comma"}]},"array-literal":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.ts"}},"end":"]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.array.literal.ts","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"arrow-function":{"patterns":[{"captures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"variable.parameter.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\b(async)\\\\s+)?([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?==>)","name":"meta.arrow.ts"},{"begin":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\b(async))?((?<![]!)}])\\\\s*(?=((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?==>|\\\\{|^(\\\\s*(export|function|class|interface|let|var|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.arrow.ts","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#arrow-return-type"},{"include":"#possibly-arrow-return-type"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"((?<=[}\\\\S])(?<!=>)|((?!\\\\{)(?=\\\\S)))(?!/[*/])","name":"meta.arrow.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#decl-block"},{"include":"#expression"}]}]},"arrow-return-type":{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?==>|\\\\{|^(\\\\s*(export|function|class|interface|let|var|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.return.type.arrow.ts","patterns":[{"include":"#arrow-return-type-body"}]},"arrow-return-type-body":{"patterns":[{"begin":"(?<=:)(?=\\\\s*\\\\{)","end":"(?<=})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"async-modifier":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(async)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.async.ts"},"binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#object-binding-pattern"},{"include":"#array-binding-pattern"},{"include":"#destructuring-variable-rest"},{"include":"#variable-initializer"}]},"binding-element-const":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#object-binding-pattern-const"},{"include":"#array-binding-pattern-const"},{"include":"#destructuring-variable-rest-const"},{"include":"#variable-initializer"}]},"boolean-literal":{"patterns":[{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))true(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.true.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))false(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.false.ts"}]},"brackets":{"patterns":[{"begin":"\\\\{","end":"}|(?=\\\\*/)","patterns":[{"include":"#brackets"}]},{"begin":"\\\\[","end":"]|(?=\\\\*/)","patterns":[{"include":"#brackets"}]}]},"cast":{"patterns":[{"captures":{"1":{"name":"meta.brace.angle.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"meta.brace.angle.ts"}},"match":"\\\\s*(<)\\\\s*(const)\\\\s*(>)","name":"cast.expr.ts"},{"begin":"(?<!\\\\+\\\\+|--)(?<=^return|[^$._[:alnum:]]return|^throw|[^$._[:alnum:]]throw|^yield|[^$._[:alnum:]]yield|^await|[^$._[:alnum:]]await|^default|[^$._[:alnum:]]default|[\\\\&(*,:=>?^|]|[^$_[:alnum:]](?:\\\\+\\\\+|--)|[^+]\\\\+|[^-]-)\\\\s*(<)(?!<?=)(?!\\\\s*$)","beginCaptures":{"1":{"name":"meta.brace.angle.ts"}},"end":"(>)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]},{"begin":"(?<=^)\\\\s*(<)(?=[$_[:alpha:]][$_[:alnum:]]*\\\\s*>)","beginCaptures":{"1":{"name":"meta.brace.angle.ts"}},"end":"(>)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]}]},"class-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(?:(abstract)\\\\s+)?\\\\b(class)\\\\b(?=\\\\s+|/[*/])","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.class.ts"}},"end":"(?<=})","name":"meta.class.ts","patterns":[{"include":"#class-declaration-or-expression-patterns"}]},"class-declaration-or-expression-patterns":{"patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"captures":{"0":{"name":"entity.name.type.class.ts"}},"match":"[$_[:alpha:]][$_[:alnum:]]*"},{"include":"#type-parameters"},{"include":"#class-or-interface-body"}]},"class-expression":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(class)\\\\b(?=\\\\s+|[<{]|/[*/])","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.type.class.ts"}},"end":"(?<=})","name":"meta.class.ts","patterns":[{"include":"#class-declaration-or-expression-patterns"}]},"class-or-interface-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"include":"#decorator"},{"begin":"(?<=:)\\\\s*","end":"(?=[-\\\\])+,:;}\\\\s]|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#expression"}]},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#field-declaration"},{"include":"#string"},{"include":"#type-annotation"},{"include":"#variable-initializer"},{"include":"#access-modifier"},{"include":"#property-accessor"},{"include":"#async-modifier"},{"include":"#after-operator-block-as-object-literal"},{"include":"#decl-block"},{"include":"#expression"},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"}]},"class-or-interface-heritage":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\b(extends|implements)\\\\b(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?=\\\\{)","patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"include":"#type-parameters"},{"include":"#expressionWithoutIdentifiers"},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))(?=\\\\s*[$_[:alpha:]][$_[:alnum:]]*(\\\\s*\\\\??\\\\.\\\\s*[$_[:alpha:]][$_[:alnum:]]*)*\\\\s*)"},{"captures":{"1":{"name":"entity.other.inherited-class.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)"},{"include":"#expressionPunctuations"}]},"comment":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","beginCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"name":"comment.block.documentation.ts","patterns":[{"include":"#docblock"}]},{"begin":"(/\\\\*)(?:\\\\s*((@)internal)(?=\\\\s|(\\\\*/)))?","beginCaptures":{"1":{"name":"punctuation.definition.comment.ts"},"2":{"name":"storage.type.internaldeclaration.ts"},"3":{"name":"punctuation.decorator.internaldeclaration.ts"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"name":"comment.block.ts"},{"begin":"(^[\\\\t ]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ts"},"2":{"name":"comment.line.double-slash.ts"},"3":{"name":"punctuation.definition.comment.ts"},"4":{"name":"storage.type.internaldeclaration.ts"},"5":{"name":"punctuation.decorator.internaldeclaration.ts"}},"contentName":"comment.line.double-slash.ts","end":"(?=$)"}]},"control-statement":{"patterns":[{"include":"#switch-statement"},{"include":"#for-loop"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(catch|finally|throw|try)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.trycatch.ts"},{"captures":{"1":{"name":"keyword.control.loop.ts"},"2":{"name":"entity.name.label.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(break|continue|goto)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(break|continue|do|goto|while)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.loop.ts"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(return)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"0":{"name":"keyword.control.flow.ts"}},"end":"(?=[;}]|$|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#expression"}]},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(case|default|switch)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.switch.ts"},{"include":"#if-statement"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(else|if)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.conditional.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(with)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.with.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(package)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(debugger)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.other.debugger.ts"}]},"decl-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.block.ts","patterns":[{"include":"#statements"}]},"declaration":{"patterns":[{"include":"#decorator"},{"include":"#var-expr"},{"include":"#function-declaration"},{"include":"#class-declaration"},{"include":"#interface-declaration"},{"include":"#enum-declaration"},{"include":"#namespace-declaration"},{"include":"#type-alias-declaration"},{"include":"#import-equals-declaration"},{"include":"#import-declaration"},{"include":"#export-declaration"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(declare|export)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"}]},"decorator":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))@","beginCaptures":{"0":{"name":"punctuation.decorator.ts"}},"end":"(?=\\\\s)","name":"meta.decorator.ts","patterns":[{"include":"#expression"}]},"destructuring-const":{"patterns":[{"begin":"(?<![:=]|^of|[^$._[:alnum:]]of|^in|[^$._[:alnum:]]in)\\\\s*(?=\\\\{)","end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.object-binding-pattern-variable.ts","patterns":[{"include":"#object-binding-pattern-const"},{"include":"#type-annotation"},{"include":"#comment"}]},{"begin":"(?<![:=]|^of|[^$._[:alnum:]]of|^in|[^$._[:alnum:]]in)\\\\s*(?=\\\\[)","end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.array-binding-pattern-variable.ts","patterns":[{"include":"#array-binding-pattern-const"},{"include":"#type-annotation"},{"include":"#comment"}]}]},"destructuring-parameter":{"patterns":[{"begin":"(?<![:=])\\\\s*(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"name":"meta.parameter.object-binding-pattern.ts","patterns":[{"include":"#parameter-object-binding-element"}]},{"begin":"(?<![:=])\\\\s*(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"name":"meta.paramter.array-binding-pattern.ts","patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]}]},"destructuring-parameter-rest":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"variable.parameter.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)"},"destructuring-variable":{"patterns":[{"begin":"(?<![:=]|^of|[^$._[:alnum:]]of|^in|[^$._[:alnum:]]in)\\\\s*(?=\\\\{)","end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.object-binding-pattern-variable.ts","patterns":[{"include":"#object-binding-pattern"},{"include":"#type-annotation"},{"include":"#comment"}]},{"begin":"(?<![:=]|^of|[^$._[:alnum:]]of|^in|[^$._[:alnum:]]in)\\\\s*(?=\\\\[)","end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.array-binding-pattern-variable.ts","patterns":[{"include":"#array-binding-pattern"},{"include":"#type-annotation"},{"include":"#comment"}]}]},"destructuring-variable-rest":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"meta.definition.variable.ts variable.other.readwrite.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)"},"destructuring-variable-rest-const":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"meta.definition.variable.ts variable.other.constant.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)"},"directives":{"begin":"^(///)\\\\s*(?=<(reference|amd-dependency|amd-module)(\\\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\\\s*=\\\\s*((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)))+\\\\s*/>\\\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.ts"}},"end":"(?=$)","name":"comment.line.triple-slash.directive.ts","patterns":[{"begin":"(<)(reference|amd-dependency|amd-module)","beginCaptures":{"1":{"name":"punctuation.definition.tag.directive.ts"},"2":{"name":"entity.name.tag.directive.ts"}},"end":"/>","endCaptures":{"0":{"name":"punctuation.definition.tag.directive.ts"}},"name":"meta.tag.ts","patterns":[{"match":"path|types|no-default-lib|lib|name|resolution-mode","name":"entity.other.attribute-name.directive.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"include":"#string"}]}]},"docblock":{"patterns":[{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.access-type.jsdoc"}},"match":"((@)a(?:ccess|pi))\\\\s+(p(?:rivate|rotected|ublic))\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{"name":"constant.other.email.link.underline.jsdoc"},"6":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"match":"((@)author)\\\\s+([^*/<>@\\\\s](?:[^*/<>@]|\\\\*[^/])*)(?:\\\\s*(<)([^>\\\\s]+)(>))?"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"keyword.operator.control.jsdoc"},"5":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)borrows)\\\\s+((?:[^*/@\\\\s]|\\\\*[^/])+)\\\\s+(as)\\\\s+((?:[^*/@\\\\s]|\\\\*[^/])+)"},{"begin":"((@)example)\\\\s+","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=@|\\\\*/)","name":"meta.example.jsdoc","patterns":[{"match":"^\\\\s\\\\*\\\\s+"},{"begin":"\\\\G(<)caption(>)","beginCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"contentName":"constant.other.description.jsdoc","end":"(</)caption(>)|(?=\\\\*/)","endCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}}},{"captures":{"0":{"name":"source.embedded.ts"}},"match":"[^*@\\\\s](?:[^*]|\\\\*[^/])*"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.symbol-type.jsdoc"}},"match":"((@)kind)\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.link.underline.jsdoc"},"4":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)see)\\\\s+(?:((?=https?://)(?:[^*\\\\s]|\\\\*[^/])+)|((?!https?://|(?:\\\\[[^]\\\\[]*])?\\\\{@(?:link|linkcode|linkplain|tutorial)\\\\b)(?:[^*/@\\\\s]|\\\\*[^/])+))"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)template)\\\\s+([$A-Z_a-z][]$.\\\\[\\\\w]*(?:\\\\s*,\\\\s*[$A-Z_a-z][]$.\\\\[\\\\w]*)*)"},{"begin":"((@)template)\\\\s+(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^]$A-\\\\[_a-{}])","patterns":[{"include":"#jsdoctype"},{"match":"([$A-Z_a-z][]$.\\\\[\\\\w]*)","name":"variable.other.jsdoc"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\s+([$A-Z_a-z][]$.\\\\[\\\\w]*)"},{"begin":"((@)typedef)\\\\s+(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^]$A-\\\\[_a-{}])","patterns":[{"include":"#jsdoctype"},{"match":"(?:[^*/@\\\\s]|\\\\*[^/])+","name":"entity.name.type.instance.jsdoc"}]},{"begin":"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\s+(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^]$A-\\\\[_a-{}])","patterns":[{"include":"#jsdoctype"},{"match":"([$A-Z_a-z][]$.\\\\[\\\\w]*)","name":"variable.other.jsdoc"},{"captures":{"1":{"name":"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{"name":"keyword.operator.assignment.jsdoc"},"3":{"name":"source.embedded.ts"},"4":{"name":"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{"name":"invalid.illegal.syntax.jsdoc"}},"match":"(\\\\[)\\\\s*[$\\\\w]+(?:(?:\\\\[])?\\\\.[$\\\\w]+)*(?:\\\\s*(=)\\\\s*((?>\\"(?:\\\\*(?!/)|\\\\\\\\(?!\\")|[^*\\\\\\\\])*?\\"|\'(?:\\\\*(?!/)|\\\\\\\\(?!\')|[^*\\\\\\\\])*?\'|\\\\[(?:\\\\*(?!/)|[^*])*?]|(?:\\\\*(?!/)|\\\\s(?!\\\\s*])|\\\\[.*?(?:]|(?=\\\\*/))|[^]*\\\\[\\\\s])*)*))?\\\\s*(?:(])((?:[^*\\\\s]|\\\\*[^/\\\\s])+)?|(?=\\\\*/))","name":"variable.other.jsdoc"}]},{"begin":"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\s+(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^]$A-\\\\[_a-{}])","patterns":[{"include":"#jsdoctype"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\s+((?:[^*@{}\\\\s]|\\\\*[^/])+)"},{"begin":"((@)(?:default(?:value)?|license|version))\\\\s+(([\\"\']))","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"},"4":{"name":"punctuation.definition.string.begin.jsdoc"}},"contentName":"variable.other.jsdoc","end":"(\\\\3)|(?=$|\\\\*/)","endCaptures":{"0":{"name":"variable.other.jsdoc"},"1":{"name":"punctuation.definition.string.end.jsdoc"}}},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\s+([^*\\\\s]+)"},{"captures":{"1":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\b","name":"storage.type.class.jsdoc"},{"include":"#inline-tags"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"((@)[$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s+)"}]},"enum-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?(?:\\\\b(const)\\\\s+)?\\\\b(enum)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.enum.ts"},"5":{"name":"entity.name.type.enum.ts"}},"end":"(?<=})","name":"meta.enum.declaration.ts","patterns":[{"include":"#comment"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)","beginCaptures":{"0":{"name":"variable.other.enummember.ts"}},"end":"(?=[,}]|$)","patterns":[{"include":"#comment"},{"include":"#variable-initializer"}]},{"begin":"(?=((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+])))","end":"(?=[,}]|$)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#comment"},{"include":"#variable-initializer"}]},{"include":"#punctuation-comma"}]}]},"export-declaration":{"patterns":[{"captures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.as.ts"},"3":{"name":"storage.type.namespace.ts"},"4":{"name":"entity.name.type.module.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)\\\\s+(as)\\\\s+(namespace)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)(?:\\\\s+(type))?(?:\\\\s*(=)|\\\\s+(default)(?=\\\\s+))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.type.ts"},"3":{"name":"keyword.operator.assignment.ts"},"4":{"name":"keyword.control.default.ts"}},"end":"(?=$|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","name":"meta.export.default.ts","patterns":[{"include":"#interface-declaration"},{"include":"#expression"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)(?:\\\\s+(type))?\\\\b(?!(\\\\$)|(\\\\s*:))((?=\\\\s*[*{])|((?=\\\\s*[$_[:alpha:]][$_[:alnum:]]*([,\\\\s]))(?!\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.type.ts"}},"end":"(?=$|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","name":"meta.export.ts","patterns":[{"include":"#import-export-declaration"}]}]},"expression":{"patterns":[{"include":"#expressionWithoutIdentifiers"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expression-inside-possibly-arrow-parens":{"patterns":[{"include":"#expressionWithoutIdentifiers"},{"include":"#comment"},{"include":"#string"},{"include":"#decorator"},{"include":"#destructuring-parameter"},{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|protected|private|readonly)\\\\s+(?=(override|public|protected|private|readonly)\\\\s+)"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*[,:]|$)"},{"include":"#type-annotation"},{"include":"#variable-initializer"},{"match":",","name":"punctuation.separator.parameter.ts"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expression-operators":{"patterns":[{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(await)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.flow.ts"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(yield)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?=\\\\s*/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*\\\\*)","beginCaptures":{"1":{"name":"keyword.control.flow.ts"}},"end":"\\\\*","endCaptures":{"0":{"name":"keyword.generator.asterisk.ts"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.control.flow.ts"},"2":{"name":"keyword.generator.asterisk.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(yield)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?:\\\\s*(\\\\*))?"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))delete(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.delete.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))in(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?!\\\\()","name":"keyword.operator.expression.in.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))of(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?!\\\\()","name":"keyword.operator.expression.of.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))instanceof(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.instanceof.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))new(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.new.ts"},{"include":"#typeof-operator"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))void(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.void.ts"},{"captures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+(const)(?=\\\\s*($|[]),:;}]))"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(as)|(satisfies))\\\\s+","beginCaptures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"keyword.control.satisfies.ts"}},"end":"(?=^|[-\\\\])+,:;>?}]|\\\\|\\\\||&&|!==|$|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as|satisfies)\\\\s+)|(\\\\s+<))","patterns":[{"include":"#type"}]},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.spread.ts"},{"match":"(?:\\\\*|(?<!\\\\()/|[-%+])=","name":"keyword.operator.assignment.compound.ts"},{"match":"(?:[\\\\&^]|<<|>>>??|\\\\|)=","name":"keyword.operator.assignment.compound.bitwise.ts"},{"match":"<<|>>>?","name":"keyword.operator.bitwise.shift.ts"},{"match":"[!=]==?","name":"keyword.operator.comparison.ts"},{"match":"<=|>=|<>|[<>]","name":"keyword.operator.relational.ts"},{"captures":{"1":{"name":"keyword.operator.logical.ts"},"2":{"name":"keyword.operator.assignment.compound.ts"},"3":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[$_[:alnum:]])(!)\\\\s*(?:(/=)|(/)(?![*/]))"},{"match":"!|&&|\\\\|\\\\||\\\\?\\\\?","name":"keyword.operator.logical.ts"},{"match":"[\\\\&^|~]","name":"keyword.operator.bitwise.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"match":"--","name":"keyword.operator.decrement.ts"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.ts"},{"match":"[-%*+/]","name":"keyword.operator.arithmetic.ts"},{"begin":"(?<=[]$)_[:alnum:]])\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)+(?:(/=)|(/)(?![*/])))","end":"(/=)|(/)(?!\\\\*([^*]|(\\\\*[^/]))*\\\\*/)","endCaptures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[]$)_[:alnum:]])\\\\s*(?:(/=)|(/)(?![*/]))"}]},"expressionPunctuations":{"patterns":[{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#string"},{"include":"#regex"},{"include":"#comment"},{"include":"#function-expression"},{"include":"#class-expression"},{"include":"#arrow-function"},{"include":"#paren-expression-possibly-arrow"},{"include":"#cast"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#instanceof-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#literal"},{"include":"#support-objects"},{"include":"#paren-expression"}]},"field-declaration":{"begin":"(?<!\\\\()(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)\\\\s+)?(?=\\\\s*(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|(#?[$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(?:(?:(\\\\?)|(!))\\\\s*)?([,:;=}]|$))","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?=[,;}]|$|^((?!\\\\s*(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|(#?[$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(?:(?:(\\\\?)|(!))\\\\s*)?([,:;=]|$))))|(?<=})","name":"meta.field.declaration.ts","patterns":[{"include":"#variable-initializer"},{"include":"#type-annotation"},{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"include":"#comment"},{"captures":{"1":{"name":"meta.definition.property.ts entity.name.function.ts"},"2":{"name":"keyword.operator.optional.ts"},"3":{"name":"keyword.operator.definiteassignment.ts"}},"match":"(#?[$_[:alpha:]][$_[:alnum:]]*)(?:(\\\\?)|(!))?(?=\\\\s*\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))"},{"match":"#?[$_[:alpha:]][$_[:alnum:]]*","name":"meta.definition.property.ts variable.object.property.ts"},{"match":"\\\\?","name":"keyword.operator.optional.ts"},{"match":"!","name":"keyword.operator.definiteassignment.ts"}]},"for-loop":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))for(?=((\\\\s+|(\\\\s*/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*))await)?\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)?(\\\\())","beginCaptures":{"0":{"name":"keyword.control.loop.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#comment"},{"match":"await","name":"keyword.control.loop.ts"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#var-expr"},{"include":"#expression"},{"include":"#punctuation-semicolon"}]}]},"function-body":{"patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#return-type"},{"include":"#type-function-return-type"},{"include":"#decl-block"},{"match":"\\\\*","name":"keyword.generator.asterisk.ts"}]},"function-call":{"patterns":[{"begin":"(?=(((([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))|(?<=\\\\)))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","end":"(?<=\\\\))(?!(((([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))|(?<=\\\\)))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))","end":"(?=\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"},{"include":"#paren-expression"}]},{"begin":"(?=(((([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))|(?<=\\\\)))(<\\\\s*[(\\\\[{]\\\\s*)$)","end":"(?<=>)(?!(((([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))|(?<=\\\\)))(<\\\\s*[(\\\\[{]\\\\s*)$)","patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))","end":"(?=(<\\\\s*[(\\\\[{]\\\\s*)$)","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"}]}]},"function-call-optionals":{"patterns":[{"match":"\\\\?\\\\.","name":"meta.function-call.ts punctuation.accessor.optional.ts"},{"match":"!","name":"meta.function-call.ts keyword.operator.definiteassignment.ts"}]},"function-call-target":{"patterns":[{"include":"#support-function-call-identifiers"},{"match":"(#?[$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.function.ts"}]},"function-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?(?:(async)\\\\s+)?(function)\\\\b(?:\\\\s*(\\\\*))?(?:(?:\\\\s+|(?<=\\\\*))([$_[:alpha:]][$_[:alnum:]]*))?\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.async.ts"},"4":{"name":"storage.type.function.ts"},"5":{"name":"keyword.generator.asterisk.ts"},"6":{"name":"meta.definition.function.ts entity.name.function.ts"}},"end":"(?=;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)|(?<=})","name":"meta.function.ts","patterns":[{"include":"#function-name"},{"include":"#function-body"}]},"function-expression":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(async)\\\\s+)?(function)\\\\b(?:\\\\s*(\\\\*))?(?:(?:\\\\s+|(?<=\\\\*))([$_[:alpha:]][$_[:alnum:]]*))?\\\\s*","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.function.ts"},"3":{"name":"keyword.generator.asterisk.ts"},"4":{"name":"meta.definition.function.ts entity.name.function.ts"}},"end":"(?=;)|(?<=})","name":"meta.function.expression.ts","patterns":[{"include":"#function-name"},{"include":"#single-line-comment-consuming-line-ending"},{"include":"#function-body"}]},"function-name":{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"meta.definition.function.ts entity.name.function.ts"},"function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.ts"}},"name":"meta.parameters.ts","patterns":[{"include":"#function-parameters-body"}]},"function-parameters-body":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#decorator"},{"include":"#destructuring-parameter"},{"include":"#parameter-name"},{"include":"#parameter-type-annotation"},{"include":"#variable-initializer"},{"match":",","name":"punctuation.separator.parameter.ts"}]},"identifiers":{"patterns":[{"include":"#object-identifiers"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"entity.name.function.ts"}},"match":"(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.constant.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(#?\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*)"},{"match":"(\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])","name":"variable.other.constant.ts"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"variable.other.readwrite.ts"}]},"if-statement":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?=\\\\bif\\\\s*(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))\\\\s*(?!\\\\{))","end":"(?=;|$|})","patterns":[{"include":"#comment"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(if)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.conditional.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression"}]},{"begin":"(?<=\\\\))\\\\s*/(?![*/])(?=(?:[^/\\\\[\\\\\\\\]|\\\\\\\\.|\\\\[([^]\\\\\\\\]|\\\\\\\\.)*])+/([dgimsuvy]+|(?![*/])|(?=/\\\\*))(?!\\\\s*[$0-9A-Z_a-z]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]},{"include":"#statements"}]}]},"import-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(import)(?:\\\\s+(type)(?!\\\\s+from))?(?!\\\\s*[(:])(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"}},"end":"(?<!(?:^|[^$._[:alnum:]])import)(?=;|$|^)","name":"meta.import.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#string"},{"begin":"(?<=(?:^|[^$._[:alnum:]])import)(?!\\\\s*[\\"\'])","end":"\\\\bfrom\\\\b","endCaptures":{"0":{"name":"keyword.control.from.ts"}},"patterns":[{"include":"#import-export-declaration"}]},{"include":"#import-export-declaration"}]},"import-equals-declaration":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(import)(?:\\\\s+(type))?\\\\s+([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(=)\\\\s*(require)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"},"5":{"name":"variable.other.readwrite.alias.ts"},"6":{"name":"keyword.operator.assignment.ts"},"7":{"name":"keyword.control.require.ts"},"8":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.import-equals.external.ts","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(import)(?:\\\\s+(type))?\\\\s+([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(=)\\\\s*(?!require\\\\b)","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"},"5":{"name":"variable.other.readwrite.alias.ts"},"6":{"name":"keyword.operator.assignment.ts"}},"end":"(?=;|$|^)","name":"meta.import-equals.internal.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"variable.other.readwrite.ts"}]}]},"import-export-assert-clause":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(with)|(assert))\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"keyword.control.with.ts"},"2":{"name":"keyword.control.assert.ts"},"3":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"include":"#string"},{"match":"[$_[:alpha:]][$_[:alnum:]]*\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*:)","name":"meta.object-literal.key.ts"},{"match":":","name":"punctuation.separator.key-value.ts"}]},"import-export-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.block.ts","patterns":[{"include":"#import-export-clause"}]},"import-export-clause":{"patterns":[{"include":"#comment"},{"captures":{"1":{"name":"keyword.control.type.ts"},"2":{"name":"keyword.control.default.ts"},"3":{"name":"constant.language.import-export-all.ts"},"4":{"name":"variable.other.readwrite.ts"},"5":{"name":"string.quoted.alias.ts"},"12":{"name":"keyword.control.as.ts"},"13":{"name":"keyword.control.default.ts"},"14":{"name":"variable.other.readwrite.alias.ts"},"15":{"name":"string.quoted.alias.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(type)\\\\s+)?(?:\\\\b(default)|(\\\\*)|\\\\b([$_[:alpha:]][$_[:alnum:]]*)|((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)))\\\\s+(as)\\\\s+(?:(default(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|([$_[:alpha:]][$_[:alnum:]]*)|((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)))"},{"include":"#punctuation-comma"},{"match":"\\\\*","name":"constant.language.import-export-all.ts"},{"match":"\\\\b(default)\\\\b","name":"keyword.control.default.ts"},{"captures":{"1":{"name":"keyword.control.type.ts"},"2":{"name":"variable.other.readwrite.alias.ts"},"3":{"name":"string.quoted.alias.ts"}},"match":"(?:\\\\b(type)\\\\s+)?(?:([$_[:alpha:]][$_[:alnum:]]*)|((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)))"}]},"import-export-declaration":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#import-export-block"},{"match":"\\\\bfrom\\\\b","name":"keyword.control.from.ts"},{"include":"#import-export-assert-clause"},{"include":"#import-export-clause"}]},"indexer-declaration":{"begin":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)\\\\s*)?\\\\s*(\\\\[)\\\\s*([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?=:)","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"meta.brace.square.ts"},"3":{"name":"variable.parameter.ts"}},"end":"(])\\\\s*(\\\\?\\\\s*)?|$","endCaptures":{"1":{"name":"meta.brace.square.ts"},"2":{"name":"keyword.operator.optional.ts"}},"name":"meta.indexer.declaration.ts","patterns":[{"include":"#type-annotation"}]},"indexer-mapped-type-declaration":{"begin":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))([-+])?(readonly)\\\\s*)?\\\\s*(\\\\[)\\\\s*([$_[:alpha:]][$_[:alnum:]]*)\\\\s+(in)\\\\s+","beginCaptures":{"1":{"name":"keyword.operator.type.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"meta.brace.square.ts"},"4":{"name":"entity.name.type.ts"},"5":{"name":"keyword.operator.expression.in.ts"}},"end":"(])([-+])?\\\\s*(\\\\?\\\\s*)?|$","endCaptures":{"1":{"name":"meta.brace.square.ts"},"2":{"name":"keyword.operator.type.modifier.ts"},"3":{"name":"keyword.operator.optional.ts"}},"name":"meta.indexer.mappedtype.declaration.ts","patterns":[{"captures":{"1":{"name":"keyword.control.as.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+"},{"include":"#type"}]},"inline-tags":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.bracket.square.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.square.end.jsdoc"}},"match":"(\\\\[)[^]]+(])(?=\\\\{@(?:link|linkcode|linkplain|tutorial))","name":"constant.other.description.jsdoc"},{"begin":"(\\\\{)((@)(?:link(?:code|plain)?|tutorial))\\\\s*","beginCaptures":{"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"},"2":{"name":"storage.type.class.jsdoc"},"3":{"name":"punctuation.definition.inline.tag.jsdoc"}},"end":"}|(?=\\\\*/)","endCaptures":{"0":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"name":"entity.name.type.instance.jsdoc","patterns":[{"captures":{"1":{"name":"variable.other.link.underline.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?=https?://)(?:[^*|}\\\\s]|\\\\*/)+)(\\\\|)?"},{"captures":{"1":{"name":"variable.other.description.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?:[^*@{|}\\\\s]|\\\\*[^/])+)(\\\\|)?"}]}]},"instanceof-expr":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(instanceof)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.expression.instanceof.ts"}},"end":"(?<=\\\\))|(?=[-\\\\])+,:;>?}]|\\\\|\\\\||&&|!==|$|([!=]==?)|(([\\\\&^|~]\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s+instanceof(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))function((\\\\s+[$_[:alpha:]][$_[:alnum:]]*)|(\\\\s*\\\\())))","patterns":[{"include":"#type"}]},"interface-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(?:(abstract)\\\\s+)?\\\\b(interface)\\\\b(?=\\\\s+|/[*/])","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.interface.ts"}},"end":"(?<=})","name":"meta.interface.ts","patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"captures":{"0":{"name":"entity.name.type.interface.ts"}},"match":"[$_[:alpha:]][$_[:alnum:]]*"},{"include":"#type-parameters"},{"include":"#class-or-interface-body"}]},"jsdoctype":{"patterns":[{"begin":"\\\\G(\\\\{)","beginCaptures":{"0":{"name":"entity.name.type.instance.jsdoc"},"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"}},"contentName":"entity.name.type.instance.jsdoc","end":"((}))\\\\s*|(?=\\\\*/)","endCaptures":{"1":{"name":"entity.name.type.instance.jsdoc"},"2":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"patterns":[{"include":"#brackets"}]}]},"label":{"patterns":[{"begin":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(:)(?=\\\\s*\\\\{)","beginCaptures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"punctuation.separator.label.ts"}},"end":"(?<=})","patterns":[{"include":"#decl-block"}]},{"captures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"punctuation.separator.label.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(:)"}]},"literal":{"patterns":[{"include":"#numeric-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#undefined-literal"},{"include":"#numericConstant-literal"},{"include":"#array-literal"},{"include":"#this-literal"},{"include":"#super-literal"}]},"method-declaration":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?\\\\s*\\\\b(constructor)\\\\b(?!:)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"storage.type.ts"}},"end":"(?=[,;}]|$)|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?(?:\\\\s*\\\\b(new)\\\\b(?!:)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))|(?:(\\\\*)\\\\s*)?)(?=\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"keyword.operator.new.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=[,;}]|$)|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?(?:\\\\b([gs]et)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*((\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"storage.type.property.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=[,;}]|$)|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]}]},"method-declaration-name":{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(\\\\??)\\\\s*[(<])","end":"(?=[(<])","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"meta.definition.method.ts entity.name.function.ts"},{"match":"\\\\?","name":"keyword.operator.optional.ts"}]},"namespace-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(namespace|module)\\\\s+(?=[\\"$\'_`[:alpha:]])","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.namespace.ts"}},"end":"(?<=})|(?=;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","name":"meta.namespace.declaration.ts","patterns":[{"include":"#comment"},{"include":"#string"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.type.module.ts"},{"include":"#punctuation-accessor"},{"include":"#decl-block"}]},"new-expr":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(new)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.new.ts"}},"end":"(?<=\\\\))|(?=[-\\\\])+,:;>?}]|\\\\|\\\\||&&|!==|$|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))new(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))function((\\\\s+[$_[:alpha:]][$_[:alnum:]]*)|(\\\\s*\\\\())))","name":"new.expr.ts","patterns":[{"include":"#expression"}]},"null-literal":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))null(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.null.ts"},"numeric-literal":{"patterns":[{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.hex.ts"},{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.binary.ts"},{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.octal.ts"},{"captures":{"0":{"name":"constant.numeric.decimal.ts"},"1":{"name":"meta.delimiter.decimal.period.ts"},"2":{"name":"storage.type.numeric.bigint.ts"},"3":{"name":"meta.delimiter.decimal.period.ts"},"4":{"name":"storage.type.numeric.bigint.ts"},"5":{"name":"meta.delimiter.decimal.period.ts"},"6":{"name":"storage.type.numeric.bigint.ts"},"7":{"name":"storage.type.numeric.bigint.ts"},"8":{"name":"meta.delimiter.decimal.period.ts"},"9":{"name":"storage.type.numeric.bigint.ts"},"10":{"name":"meta.delimiter.decimal.period.ts"},"11":{"name":"storage.type.numeric.bigint.ts"},"12":{"name":"meta.delimiter.decimal.period.ts"},"13":{"name":"storage.type.numeric.bigint.ts"},"14":{"name":"storage.type.numeric.bigint.ts"}},"match":"(?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$)"}]},"numericConstant-literal":{"patterns":[{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))NaN(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.nan.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Infinity(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.infinity.ts"}]},"object-binding-element":{"patterns":[{"include":"#comment"},{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(:))","end":"(?=[,}])","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#binding-element"}]},{"include":"#object-binding-pattern"},{"include":"#destructuring-variable-rest"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"object-binding-element-const":{"patterns":[{"include":"#comment"},{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(:))","end":"(?=[,}])","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#binding-element-const"}]},{"include":"#object-binding-pattern-const"},{"include":"#destructuring-variable-rest-const"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"object-binding-element-propertyName":{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(:))","end":"(:)","endCaptures":{"0":{"name":"punctuation.destructuring.ts"}},"patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"variable.object.property.ts"}]},"object-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#object-binding-element"}]},"object-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#object-binding-element-const"}]},"object-identifiers":{"patterns":[{"match":"([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*\\\\??\\\\.\\\\s*prototype\\\\b(?!\\\\$))","name":"support.class.ts"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.constant.object.property.ts"},"4":{"name":"variable.other.object.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(?:(#?\\\\p{upper}[$_\\\\d[:upper:]]*)|(#?[$_[:alpha:]][$_[:alnum:]]*))(?=\\\\s*\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*)"},{"captures":{"1":{"name":"variable.other.constant.object.ts"},"2":{"name":"variable.other.object.ts"}},"match":"(?:(\\\\p{upper}[$_\\\\d[:upper:]]*)|([$_[:alpha:]][$_[:alnum:]]*))(?=\\\\s*\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*)"}]},"object-literal":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.objectliteral.ts","patterns":[{"include":"#object-member"}]},"object-literal-method-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(async)\\\\s+)?(?:\\\\b([gs]et)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*((\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=[,;}])|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(async)\\\\s+)?(?:\\\\b([gs]et)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*((\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=[(<])","patterns":[{"include":"#method-declaration-name"}]}]},"object-member":{"patterns":[{"include":"#comment"},{"include":"#object-literal-method-declaration"},{"begin":"(?=\\\\[)","end":"(?=:)|((?<=])(?=\\\\s*[(<]))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#array-literal"}]},{"begin":"(?=[\\"\'`])","end":"(?=:)|((?<=[\\"\'`])(?=((\\\\s*[(,<}])|(\\\\s+(as|satisifies)\\\\s+))))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?=\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$)))","end":"(?=:)|(?=\\\\s*([(,<}])|(\\\\s+as|satisifies\\\\s+))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#numeric-literal"}]},{"begin":"(?<=[]\\"\'`])(?=\\\\s*[(<])","end":"(?=[,;}])|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#function-body"}]},{"captures":{"0":{"name":"meta.object-literal.key.ts"},"1":{"name":"constant.numeric.decimal.ts"}},"match":"(?![$_[:alpha:]])(\\\\d+)\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*:)","name":"meta.object.member.ts"},{"captures":{"0":{"name":"meta.object-literal.key.ts"},"1":{"name":"entity.name.function.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*:(\\\\s*/\\\\*([^*]|(\\\\*[^/]))*\\\\*/)*\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))","name":"meta.object.member.ts"},{"captures":{"0":{"name":"meta.object-literal.key.ts"}},"match":"[$_[:alpha:]][$_[:alnum:]]*\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*:)","name":"meta.object.member.ts"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=[,}])","name":"meta.object.member.ts","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"variable.other.readwrite.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?=[,}]|$|//|/\\\\*)","name":"meta.object.member.ts"},{"captures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+(const)(?=\\\\s*([,}]|$))","name":"meta.object.member.ts"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(as)|(satisfies))\\\\s+","beginCaptures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"keyword.control.satisfies.ts"}},"end":"(?=[-\\\\])+,:;>?}]|\\\\|\\\\||&&|!==|$|^|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as|satisifies)\\\\s+))","name":"meta.object.member.ts","patterns":[{"include":"#type"}]},{"begin":"(?=[$_[:alpha:]][$_[:alnum:]]*\\\\s*=)","end":"(?=[,}]|$|//|/\\\\*)","name":"meta.object.member.ts","patterns":[{"include":"#expression"}]},{"begin":":","beginCaptures":{"0":{"name":"meta.object-literal.key.ts punctuation.separator.key-value.ts"}},"end":"(?=[,}])","name":"meta.object.member.ts","patterns":[{"begin":"(?<=:)\\\\s*(async)?(?=\\\\s*(<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(\\\\()(?=\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(?=<\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=>)","patterns":[{"include":"#type-parameters"}]},{"begin":"(?<=>)\\\\s*(\\\\()(?=\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"include":"#possibly-arrow-return-type"},{"include":"#expression"}]},{"include":"#punctuation-comma"},{"include":"#decl-block"}]},"parameter-array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]},"parameter-binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#parameter-object-binding-pattern"},{"include":"#parameter-array-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"}]},"parameter-name":{"patterns":[{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|protected|private|readonly)\\\\s+(?=(override|public|protected|private|readonly)\\\\s+)"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)"}]},"parameter-object-binding-element":{"patterns":[{"include":"#comment"},{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(:))","end":"(?=[,}])","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#parameter-binding-element"},{"include":"#paren-expression"}]},{"include":"#parameter-object-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"parameter-object-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#parameter-object-binding-element"}]},"parameter-type-annotation":{"patterns":[{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?=[),])|(?==[^>])","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression"}]},"paren-expression-possibly-arrow":{"patterns":[{"begin":"(?<=[(,=])\\\\s*(async)?(?=\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"begin":"(?<=[(,=]|=>|^return|[^$._[:alnum:]]return)\\\\s*(async)?(?=\\\\s*((((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()|(<)|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)))\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"include":"#possibly-arrow-return-type"}]},"paren-expression-possibly-arrow-with-typeparameters":{"patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},"possibly-arrow-return-type":{"begin":"(?<=\\\\)|^)\\\\s*(:)(?=\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*=>)","beginCaptures":{"1":{"name":"meta.arrow.ts meta.return.type.arrow.ts keyword.operator.type.annotation.ts"}},"contentName":"meta.arrow.ts meta.return.type.arrow.ts","end":"(?==>|\\\\{|^(\\\\s*(export|function|class|interface|let|var|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","patterns":[{"include":"#arrow-return-type-body"}]},"property-accessor":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(accessor|get|set)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.type.property.ts"},"punctuation-accessor":{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"}},"match":"(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d))"},"punctuation-comma":{"match":",","name":"punctuation.separator.comma.ts"},"punctuation-semicolon":{"match":";","name":"punctuation.terminator.statement.ts"},"qstring-double":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\\")|([^\\\\n\\\\\\\\])$","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.double.ts","patterns":[{"include":"#string-character-escape"}]},"qstring-single":{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\')|([^\\\\n\\\\\\\\])$","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.single.ts","patterns":[{"include":"#string-character-escape"}]},"regex":{"patterns":[{"begin":"(?<!\\\\+\\\\+|--|})(?<=[!(+,:=?\\\\[]|^return|[^$._[:alnum:]]return|^case|[^$._[:alnum:]]case|=>|&&|\\\\|\\\\||\\\\*/)\\\\s*(/)(?![*/])(?=(?:[^()/\\\\[\\\\\\\\]|\\\\\\\\.|\\\\[([^]\\\\\\\\]|\\\\\\\\.)+]|\\\\(([^)\\\\\\\\]|\\\\\\\\.)+\\\\))+/([dgimsuvy]+|(?![*/])|(?=/\\\\*))(?!\\\\s*[$0-9A-Z_a-z]))","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]},{"begin":"((?<![]$)_[:alnum:]]|\\\\+\\\\+|--|}|\\\\*/)|((?<=^return|[^$._[:alnum:]]return|^case|[^$._[:alnum:]]case))\\\\s*)/(?![*/])(?=(?:[^/\\\\[\\\\\\\\]|\\\\\\\\.|\\\\[([^]\\\\\\\\]|\\\\\\\\.)*])+/([dgimsuvy]+|(?![*/])|(?=/\\\\*))(?!\\\\s*[$0-9A-Z_a-z]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]}]},"regex-character-class":{"patterns":[{"match":"\\\\\\\\[DSWdfnrstvw]|\\\\.","name":"constant.other.character-class.regexp"},{"match":"\\\\\\\\([0-7]{3}|x\\\\h{2}|u\\\\h{4})","name":"constant.character.numeric.regexp"},{"match":"\\\\\\\\c[A-Z]","name":"constant.character.control.regexp"},{"match":"\\\\\\\\.","name":"constant.character.escape.backslash.regexp"}]},"regexp":{"patterns":[{"match":"\\\\\\\\[Bb]|[$^]","name":"keyword.control.anchor.regexp"},{"captures":{"0":{"name":"keyword.other.back-reference.regexp"},"1":{"name":"variable.other.regexp"}},"match":"\\\\\\\\(?:[1-9]\\\\d*|k<([$A-Z_a-z][$\\\\w]*)>)"},{"match":"[*+?]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?<!))","beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"punctuation.definition.group.assertion.regexp"},"3":{"name":"meta.assertion.look-ahead.regexp"},"4":{"name":"meta.assertion.negative-look-ahead.regexp"},"5":{"name":"meta.assertion.look-behind.regexp"},"6":{"name":"meta.assertion.negative-look-behind.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.assertion.regexp","patterns":[{"include":"#regexp"}]},{"begin":"\\\\((?:(\\\\?:)|\\\\?<([$A-Z_a-z][$\\\\w]*)>)?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.no-capture.regexp"},"2":{"name":"variable.other.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x\\\\h{2}|u\\\\h{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))-(?:[^]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x\\\\h{2}|u\\\\h{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"return-type":{"patterns":[{"begin":"(?<=\\\\))\\\\s*(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![\\\\&:|])(?=$|^|[,;{}]|//)","name":"meta.return.type.ts","patterns":[{"include":"#return-type-core"}]},{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![\\\\&:|])((?=[,;{}]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.return.type.ts","patterns":[{"include":"#return-type-core"}]}]},"return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<=[\\\\&:|])(?=\\\\s*\\\\{)","end":"(?<=})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"shebang":{"captures":{"1":{"name":"punctuation.definition.comment.ts"}},"match":"\\\\A(#!).*(?=$)","name":"comment.line.shebang.ts"},"single-line-comment-consuming-line-ending":{"begin":"(^[\\\\t ]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ts"},"2":{"name":"comment.line.double-slash.ts"},"3":{"name":"punctuation.definition.comment.ts"},"4":{"name":"storage.type.internaldeclaration.ts"},"5":{"name":"punctuation.decorator.internaldeclaration.ts"}},"contentName":"comment.line.double-slash.ts","end":"(?=^)"},"statements":{"patterns":[{"include":"#declaration"},{"include":"#control-statement"},{"include":"#after-operator-block-as-object-literal"},{"include":"#decl-block"},{"include":"#label"},{"include":"#expression"},{"include":"#punctuation-semicolon"},{"include":"#string"},{"include":"#comment"}]},"string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template"}]},"string-character-escape":{"match":"\\\\\\\\(x\\\\h{2}|u\\\\h{4}|u\\\\{\\\\h+}|[012][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)","name":"constant.character.escape.ts"},"super-literal":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))super\\\\b(?!\\\\$)","name":"variable.language.super.ts"},"support-function-call-identifiers":{"patterns":[{"include":"#literal"},{"include":"#support-objects"},{"include":"#object-identifiers"},{"include":"#punctuation-accessor"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))import(?=\\\\s*\\\\(\\\\s*[\\"\'`])","name":"keyword.operator.expression.import.ts"}]},"support-objects":{"patterns":[{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(arguments)\\\\b(?!\\\\$)","name":"variable.language.arguments.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(Promise)\\\\b(?!\\\\$)","name":"support.class.promise.ts"},{"captures":{"1":{"name":"keyword.control.import.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"support.variable.property.importmeta.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(import)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(meta)\\\\b(?!\\\\$)"},{"captures":{"1":{"name":"keyword.operator.new.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"support.variable.property.target.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(new)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(target)\\\\b(?!\\\\$)"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"support.variable.property.ts"},"4":{"name":"support.constant.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(?:(constructor|length|prototype|__proto__)\\\\b(?!\\\\$|\\\\s*(<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\()|(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\b(?!\\\\$))"},{"captures":{"1":{"name":"support.type.object.module.ts"},"2":{"name":"support.type.object.module.ts"},"3":{"name":"punctuation.accessor.ts"},"4":{"name":"punctuation.accessor.optional.ts"},"5":{"name":"support.type.object.module.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(exports)|(module)(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))(exports|id|filename|loaded|parent|children))?)\\\\b(?!\\\\$)"}]},"switch-statement":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?=\\\\bswitch\\\\s*\\\\()","end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"switch-statement.expr.ts","patterns":[{"include":"#comment"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(switch)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.switch.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"switch-expression.expr.ts","patterns":[{"include":"#expression"}]},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"(?=})","name":"switch-block.expr.ts","patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(case|default(?=:))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.control.switch.ts"}},"end":"(?=:)","name":"case-clause.expr.ts","patterns":[{"include":"#expression"}]},{"begin":"(:)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"case-clause.expr.ts punctuation.definition.section.case-statement.ts"},"2":{"name":"meta.block.ts punctuation.definition.block.ts"}},"contentName":"meta.block.ts","end":"}","endCaptures":{"0":{"name":"meta.block.ts punctuation.definition.block.ts"}},"patterns":[{"include":"#statements"}]},{"captures":{"0":{"name":"case-clause.expr.ts punctuation.definition.section.case-statement.ts"}},"match":"(:)"},{"include":"#statements"}]}]},"template":{"patterns":[{"include":"#template-call"},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#template-substitution-element"},{"include":"#string-character-escape"}]}]},"template-call":{"patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([$_[:alpha:]][$_[:alnum:]]*)(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?`)","end":"(?=`)","patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([$_[:alpha:]][$_[:alnum:]]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.function.tagged-template.ts"}]},{"include":"#type-arguments"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"}},"end":"(?=`)","patterns":[{"include":"#type-arguments"}]}]},"template-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#expression"}]},"template-type":{"patterns":[{"include":"#template-call"},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#template-type-substitution-element"},{"include":"#string-character-escape"}]}]},"template-type-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#type"}]},"ternary-expression":{"begin":"(?!\\\\?\\\\.\\\\s*\\\\D)(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#expression"}]},"this-literal":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))this\\\\b(?!\\\\$)","name":"variable.language.this.ts"},"type":{"patterns":[{"include":"#comment"},{"include":"#type-string"},{"include":"#numeric-literal"},{"include":"#type-primitive"},{"include":"#type-builtin-literals"},{"include":"#type-parameters"},{"include":"#type-tuple"},{"include":"#type-object"},{"include":"#type-operators"},{"include":"#type-conditional"},{"include":"#type-fn-type-parameters"},{"include":"#type-paren-or-function-parameters"},{"include":"#type-function-return-type"},{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*"},{"include":"#type-name"}]},"type-alias-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(type)\\\\b\\\\s+([$_[:alpha:]][$_[:alnum:]]*)\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.type.ts"},"4":{"name":"entity.name.type.alias.ts"}},"end":"(?=[;}]|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","name":"meta.type.declaration.ts","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"begin":"(=)\\\\s*(intrinsic)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"},"2":{"name":"keyword.control.intrinsic.ts"}},"end":"(?=[;}]|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#type"}]},{"begin":"(=)\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=[;}]|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#type"}]}]},"type-annotation":{"patterns":[{"begin":"(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![\\\\&:|])(?!\\\\s*[\\\\&|]\\\\s+)((?=^|[]),;}]|//)|(?==[^>])|((?<=[]$)>_}[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]},{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![\\\\&:|])((?=[]),;}]|//)|(?==[^>])|(?=^\\\\s*$)|((?<=[]$)>_}[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"type-arguments":{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#type-arguments-body"}]},"type-arguments-body":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(_)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"include":"#type"},{"include":"#punctuation-comma"}]},"type-builtin-literals":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(this|true|false|undefined|null|object)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"support.type.builtin.ts"},"type-conditional":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?<=:)","patterns":[{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.ts"}},"end":":","endCaptures":{"0":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#type"}]},{"include":"#type"}]}]},"type-fn-type-parameters":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(new)\\\\b(?=\\\\s*<)","beginCaptures":{"1":{"name":"meta.type.constructor.ts storage.modifier.ts"},"2":{"name":"meta.type.constructor.ts keyword.control.new.ts"}},"end":"(?<=>)","patterns":[{"include":"#comment"},{"include":"#type-parameters"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(new)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.control.new.ts"}},"end":"(?<=\\\\))","name":"meta.type.constructor.ts","patterns":[{"include":"#function-parameters"}]},{"begin":"((?=\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>))))))","end":"(?<=\\\\))","name":"meta.type.function.ts","patterns":[{"include":"#function-parameters"}]}]},"type-function-return-type":{"patterns":[{"begin":"(=>)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"storage.type.function.arrow.ts"}},"end":"(?<!=>)(?<![\\\\&|])(?=[]),:;=>?{}]|//|$)","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"(?<!=>)(?<![\\\\&|])((?=[]),:;=>?{}]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]}]},"type-function-return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<==>)(?=\\\\s*\\\\{)","end":"(?<=})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"type-infer":{"patterns":[{"captures":{"1":{"name":"keyword.operator.expression.infer.ts"},"2":{"name":"entity.name.type.ts"},"3":{"name":"keyword.operator.expression.extends.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(infer)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?:\\\\s+(extends)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))?","name":"meta.type.infer.ts"}]},"type-name":{"patterns":[{"begin":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(<)","captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts"}},"contentName":"meta.type.parameters.ts","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(<)","beginCaptures":{"1":{"name":"entity.name.type.ts"},"2":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts"}},"contentName":"meta.type.parameters.ts","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"entity.name.type.ts"}]},"type-object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.object.type.ts","patterns":[{"include":"#comment"},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#indexer-mapped-type-declaration"},{"include":"#field-declaration"},{"include":"#type-annotation"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=[,;}]|$)|(?<=})","patterns":[{"include":"#type"}]},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"},{"include":"#type"}]},"type-operators":{"patterns":[{"include":"#typeof-operator"},{"include":"#type-infer"},{"begin":"([\\\\&|])(?=\\\\s*\\\\{)","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?<=})","patterns":[{"include":"#type-object"}]},{"begin":"[\\\\&|]","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?=\\\\S)"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))keyof(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.keyof.ts"},{"match":"([:?])","name":"keyword.operator.ternary.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))import(?=\\\\s*\\\\()","name":"keyword.operator.expression.import.ts"}]},"type-parameters":{"begin":"(<)","beginCaptures":{"1":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#comment"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends|in|out|const)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"},{"include":"#type"},{"include":"#punctuation-comma"},{"match":"(=)(?!>)","name":"keyword.operator.assignment.ts"}]},"type-paren-or-function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.type.paren.cover.ts","patterns":[{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))\\\\s*(\\\\??)(?=\\\\s*(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))\\\\s*(\\\\??)(?=:)"},{"include":"#type-annotation"},{"match":",","name":"punctuation.separator.parameter.ts"},{"include":"#type"}]},"type-predicate-operator":{"patterns":[{"captures":{"1":{"name":"keyword.operator.type.asserts.ts"},"2":{"name":"variable.parameter.ts variable.language.this.ts"},"3":{"name":"variable.parameter.ts"},"4":{"name":"keyword.operator.expression.is.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(asserts)\\\\s+)?(?!asserts)(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))\\\\s(is)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"captures":{"1":{"name":"keyword.operator.type.asserts.ts"},"2":{"name":"variable.parameter.ts variable.language.this.ts"},"3":{"name":"variable.parameter.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(asserts)\\\\s+(?!is)(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))asserts(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.type.asserts.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))is(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.is.ts"}]},"type-primitive":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(string|number|bigint|boolean|symbol|any|void|never|unknown)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"support.type.primitive.ts"},"type-string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template-type"}]},"type-tuple":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.ts"}},"end":"]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.type.tuple.ts","patterns":[{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.rest.ts"},{"captures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"keyword.operator.optional.ts"},"3":{"name":"punctuation.separator.label.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(\\\\?)?\\\\s*(:)"},{"include":"#type"},{"include":"#punctuation-comma"}]},"typeof-operator":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))typeof(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"0":{"name":"keyword.operator.expression.typeof.ts"}},"end":"(?=[]\\\\&),:;=>?{|}]|(extends\\\\s+)|$|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#type-arguments"},{"include":"#expression"}]},"undefined-literal":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))undefined(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.undefined.ts"},"var-expr":{"patterns":[{"begin":"(?=(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(var|let)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","end":"(?!(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(var|let)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=^|[;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)|((?<!^let|[^$._[:alnum:]]let|^var|[^$._[:alnum:]]var)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(var|let)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#destructuring-variable"},{"include":"#var-single-variable"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*(?=$|//)","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?=[;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#destructuring-variable"},{"include":"#var-single-variable"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]},{"begin":"(?=(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?!(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=^|[;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)|((?<!(?:^|[^$._[:alnum:]])const)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#destructuring-const"},{"include":"#var-single-const"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*(?=$|//)","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?=[;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#destructuring-const"},{"include":"#var-single-const"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]},{"begin":"(?=(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b\\\\b(using(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])|await\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b)\\\\b(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?!(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b\\\\b(using(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])|await\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b)\\\\b(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=[;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)|((?<!(?:^|[^$._[:alnum:]]|^await\\\\s+|[^$._[:alnum:]]await\\\\s+)using)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b\\\\b(using(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])|await\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b)\\\\b(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#var-single-const"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*((?!\\\\S)|(?=//))","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?=[;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#var-single-const"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]}]},"var-single-const":{"patterns":[{"begin":"([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts entity.name.function.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]}]},"var-single-variable":{"patterns":[{"begin":"([$_[:alpha:]][$_[:alnum:]]*)(!)?(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts entity.name.function.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"(\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])(!)?","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)(!)?","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.readwrite.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]}]},"var-single-variable-type-annotation":{"patterns":[{"include":"#type-annotation"},{"include":"#string"},{"include":"#comment"}]},"variable-initializer":{"patterns":[{"begin":"(?<![!=])(=)(?!=)(?=\\\\s*\\\\S)(?!\\\\s*.*=>\\\\s*$)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=$|^|[]),;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","patterns":[{"include":"#expression"}]},{"begin":"(?<![!=])(=)(?!=)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=[]),;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))|(?=^\\\\s*$)|(?<![-\\\\&*+/|])(?<=\\\\S)(?<!=)(?=\\\\s*$)","patterns":[{"include":"#expression"}]}]}},"scopeName":"source.ts","aliases":["ts"]}')), ll = [
|
|
6270
6276
|
il
|
|
6271
6277
|
];
|
|
6272
|
-
function
|
|
6278
|
+
function We(t) {
|
|
6273
6279
|
if ([...t].length !== 1) throw new Error(`Expected "${t}" to be a single code point`);
|
|
6274
6280
|
return t.codePointAt(0);
|
|
6275
6281
|
}
|
|
6276
6282
|
function cl(t, e, n) {
|
|
6277
6283
|
return t.has(e) || t.set(e, n), t.get(e);
|
|
6278
6284
|
}
|
|
6279
|
-
const An = /* @__PURE__ */ new Set(["alnum", "alpha", "ascii", "blank", "cntrl", "digit", "graph", "lower", "print", "punct", "space", "upper", "word", "xdigit"]),
|
|
6285
|
+
const An = /* @__PURE__ */ new Set(["alnum", "alpha", "ascii", "blank", "cntrl", "digit", "graph", "lower", "print", "punct", "space", "upper", "word", "xdigit"]), H = String.raw;
|
|
6280
6286
|
function Ve(t, e) {
|
|
6281
6287
|
if (t == null) throw new Error(e ?? "Value expected");
|
|
6282
6288
|
return t;
|
|
6283
6289
|
}
|
|
6284
|
-
const or =
|
|
6290
|
+
const or = H`\[\^?`, ir = `c.? | C(?:-.?)?|${H`[pP]\{(?:\^?[-\x20_]*[A-Za-z][-\x20\w]*\})?`}|${H`x[89A-Fa-f]\p{AHex}(?:\\x[89A-Fa-f]\p{AHex})*`}|${H`u(?:\p{AHex}{4})? | x\{[^\}]*\}? | x\p{AHex}{0,2}`}|${H`o\{[^\}]*\}?`}|${H`\d{1,3}`}`, In = /[?*+][?+]?|\{(?:\d+(?:,\d*)?|,\d+)\}\??/, dt = new RegExp(H`
|
|
6285
6291
|
\\ (?:
|
|
6286
6292
|
${ir}
|
|
6287
6293
|
| [gk]<[^>]*>?
|
|
@@ -6303,7 +6309,7 @@ const or = W`\[\^?`, ir = `c.? | C(?:-.?)?|${W`[pP]\{(?:\^?[-\x20_]*[A-Za-z][-\x
|
|
|
6303
6309
|
| (?:${In.source})+
|
|
6304
6310
|
| ${or}
|
|
6305
6311
|
| .
|
|
6306
|
-
`.replace(/\s+/g, ""), "gsu"), Xt = new RegExp(
|
|
6312
|
+
`.replace(/\s+/g, ""), "gsu"), Xt = new RegExp(H`
|
|
6307
6313
|
\\ (?:
|
|
6308
6314
|
${ir}
|
|
6309
6315
|
| .
|
|
@@ -6325,19 +6331,19 @@ function ul(t, e = {}) {
|
|
|
6325
6331
|
}, replaceCurrentModX(p) {
|
|
6326
6332
|
r[r.length - 1] = p;
|
|
6327
6333
|
}, singleline: n.rules.singleline };
|
|
6328
|
-
let o = [],
|
|
6329
|
-
for (dt.lastIndex = 0;
|
|
6330
|
-
const p = pl(s, t,
|
|
6334
|
+
let o = [], i;
|
|
6335
|
+
for (dt.lastIndex = 0; i = dt.exec(t); ) {
|
|
6336
|
+
const p = pl(s, t, i[0], dt.lastIndex);
|
|
6331
6337
|
p.tokens ? o.push(...p.tokens) : p.token && o.push(p.token), p.lastIndex !== void 0 && (dt.lastIndex = p.lastIndex);
|
|
6332
6338
|
}
|
|
6333
|
-
const
|
|
6339
|
+
const l = [];
|
|
6334
6340
|
let c = 0;
|
|
6335
6341
|
o.filter((p) => p.type === "GroupOpen").forEach((p) => {
|
|
6336
|
-
p.kind === "capturing" ? p.number = ++c : p.raw === "(" &&
|
|
6337
|
-
}), c ||
|
|
6342
|
+
p.kind === "capturing" ? p.number = ++c : p.raw === "(" && l.push(p);
|
|
6343
|
+
}), c || l.forEach((p, d) => {
|
|
6338
6344
|
p.kind = "capturing", p.number = d + 1;
|
|
6339
6345
|
});
|
|
6340
|
-
const u = c ||
|
|
6346
|
+
const u = c || l.length;
|
|
6341
6347
|
return { tokens: o.map((p) => p.type === "EscapedNumber" ? Nl(p, u) : p).flat(), flags: a };
|
|
6342
6348
|
}
|
|
6343
6349
|
function pl(t, e, n, a) {
|
|
@@ -6398,10 +6404,10 @@ function pl(t, e, n, a) {
|
|
|
6398
6404
|
}
|
|
6399
6405
|
if (n === ".") return { token: Re("dot", n) };
|
|
6400
6406
|
if (n === "^" || n === "$") {
|
|
6401
|
-
const o = t.singleline ? { "^":
|
|
6407
|
+
const o = t.singleline ? { "^": H`\A`, $: H`\Z` }[n] : n;
|
|
6402
6408
|
return { token: aa(o, n) };
|
|
6403
6409
|
}
|
|
6404
|
-
return n === "|" ? { token: fl(n) } : In.test(n) ? { tokens: Pl(n) } : { token:
|
|
6410
|
+
return n === "|" ? { token: fl(n) } : In.test(n) ? { tokens: Pl(n) } : { token: ge(We(n), n) };
|
|
6405
6411
|
}
|
|
6406
6412
|
function dl(t, e, n) {
|
|
6407
6413
|
const a = [ra(e[1] === "^", e)];
|
|
@@ -6410,11 +6416,11 @@ function dl(t, e, n) {
|
|
|
6410
6416
|
const o = s[0];
|
|
6411
6417
|
if (o[0] === "[" && o[1] !== ":") r++, a.push(ra(o[1] === "^", o));
|
|
6412
6418
|
else if (o === "]") {
|
|
6413
|
-
if (a.at(-1).type === "CharacterClassOpen") a.push(
|
|
6419
|
+
if (a.at(-1).type === "CharacterClassOpen") a.push(ge(93, o));
|
|
6414
6420
|
else if (r--, a.push(hl(o)), !r) break;
|
|
6415
6421
|
} else {
|
|
6416
|
-
const
|
|
6417
|
-
Array.isArray(
|
|
6422
|
+
const i = ml(o);
|
|
6423
|
+
Array.isArray(i) ? a.push(...i) : a.push(i);
|
|
6418
6424
|
}
|
|
6419
6425
|
}
|
|
6420
6426
|
return { tokens: a, lastIndex: Xt.lastIndex || t.length };
|
|
@@ -6426,13 +6432,13 @@ function ml(t) {
|
|
|
6426
6432
|
if (!e || !An.has(e.groups.name)) throw new Error(`Invalid POSIX class "${t}"`);
|
|
6427
6433
|
return Re("posix", t, { value: e.groups.name, negate: !!e.groups.negate });
|
|
6428
6434
|
}
|
|
6429
|
-
return t === "-" ? gl(t) : t === "&&" ? bl(t) :
|
|
6435
|
+
return t === "-" ? gl(t) : t === "&&" ? bl(t) : ge(We(t), t);
|
|
6430
6436
|
}
|
|
6431
6437
|
function lr(t, { inCharClass: e }) {
|
|
6432
6438
|
const n = t[1];
|
|
6433
6439
|
if (n === "c" || n === "C") return Cl(t);
|
|
6434
6440
|
if ("dDhHsSwW".includes(n)) return El(t);
|
|
6435
|
-
if (t.startsWith(
|
|
6441
|
+
if (t.startsWith(H`\o{`)) throw new Error(`Incomplete, invalid, or unsupported octal code point "${t}"`);
|
|
6436
6442
|
if (/^\\[pP]\{/.test(t)) {
|
|
6437
6443
|
if (t.length === 3) throw new Error(`Incomplete or invalid Unicode property "${t}"`);
|
|
6438
6444
|
return Al(t);
|
|
@@ -6440,18 +6446,18 @@ function lr(t, { inCharClass: e }) {
|
|
|
6440
6446
|
if (new RegExp("^\\\\x[89A-Fa-f]\\p{AHex}", "u").test(t)) try {
|
|
6441
6447
|
const a = t.split(/\\x/).slice(1).map((o) => parseInt(o, 16)), r = new TextDecoder("utf-8", { ignoreBOM: !0, fatal: !0 }).decode(new Uint8Array(a)), s = new TextEncoder();
|
|
6442
6448
|
return [...r].map((o) => {
|
|
6443
|
-
const
|
|
6444
|
-
return
|
|
6449
|
+
const i = [...s.encode(o)].map((l) => `\\x${l.toString(16)}`).join("");
|
|
6450
|
+
return ge(We(o), i);
|
|
6445
6451
|
});
|
|
6446
6452
|
} catch {
|
|
6447
6453
|
throw new Error(`Multibyte code "${t}" incomplete or invalid in Oniguruma`);
|
|
6448
6454
|
}
|
|
6449
|
-
if (n === "u" || n === "x") return
|
|
6450
|
-
if (sa.has(n)) return
|
|
6455
|
+
if (n === "u" || n === "x") return ge(Rl(t), t);
|
|
6456
|
+
if (sa.has(n)) return ge(sa.get(n), t);
|
|
6451
6457
|
if (/\d/.test(n)) return yl(e, t);
|
|
6452
|
-
if (t === "\\") throw new Error(
|
|
6458
|
+
if (t === "\\") throw new Error(H`Incomplete escape "\"`);
|
|
6453
6459
|
if (n === "M") throw new Error(`Unsupported meta "${t}"`);
|
|
6454
|
-
if ([...t].length === 2) return
|
|
6460
|
+
if ([...t].length === 2) return ge(t.codePointAt(1), t);
|
|
6455
6461
|
throw new Error(`Unexpected escape "${t}"`);
|
|
6456
6462
|
}
|
|
6457
6463
|
function fl(t) {
|
|
@@ -6463,7 +6469,7 @@ function aa(t, e) {
|
|
|
6463
6469
|
function cr(t) {
|
|
6464
6470
|
return { type: "Backreference", raw: t };
|
|
6465
6471
|
}
|
|
6466
|
-
function
|
|
6472
|
+
function ge(t, e) {
|
|
6467
6473
|
return { type: "Character", value: t, raw: e };
|
|
6468
6474
|
}
|
|
6469
6475
|
function hl(t) {
|
|
@@ -6506,14 +6512,14 @@ const vl = /* @__PURE__ */ new Set(["COUNT", "CMP", "ERROR", "FAIL", "MAX", "MIS
|
|
|
6506
6512
|
function Cl(t) {
|
|
6507
6513
|
const e = t[1] === "c" ? t[2] : t[3];
|
|
6508
6514
|
if (!e || !/[A-Za-z]/.test(e)) throw new Error(`Unsupported control character "${t}"`);
|
|
6509
|
-
return
|
|
6515
|
+
return ge(We(e.toUpperCase()) - 64, t);
|
|
6510
6516
|
}
|
|
6511
6517
|
function xl(t, e) {
|
|
6512
6518
|
let { on: n, off: a } = /^\(\?(?<on>[imx]*)(?:-(?<off>[-imx]*))?/.exec(t).groups;
|
|
6513
6519
|
a ?? (a = "");
|
|
6514
|
-
const r = (e.getCurrentModX() || n.includes("x")) && !a.includes("x"), s = ia(n), o = ia(a),
|
|
6515
|
-
if (s && (
|
|
6516
|
-
if (t.endsWith(":")) return e.pushModX(r), e.numOpenGroups++, Oe("group", t, { ...(s || o) && { flags:
|
|
6520
|
+
const r = (e.getCurrentModX() || n.includes("x")) && !a.includes("x"), s = ia(n), o = ia(a), i = {};
|
|
6521
|
+
if (s && (i.enable = s), o && (i.disable = o), t.endsWith(")")) return e.replaceCurrentModX(r), ur("flags", t, { flags: i });
|
|
6522
|
+
if (t.endsWith(":")) return e.pushModX(r), e.numOpenGroups++, Oe("group", t, { ...(s || o) && { flags: i } });
|
|
6517
6523
|
throw new Error(`Unexpected flag modifier "${t}"`);
|
|
6518
6524
|
}
|
|
6519
6525
|
function Sl(t) {
|
|
@@ -6522,7 +6528,7 @@ function Sl(t) {
|
|
|
6522
6528
|
const { name: n, tag: a, args: r } = e.groups;
|
|
6523
6529
|
if (!n) throw new Error(`Invalid named callout "${t}"`);
|
|
6524
6530
|
if (a === "") throw new Error(`Named callout tag with empty value not allowed "${t}"`);
|
|
6525
|
-
const s = r ? r.split(",").filter((u) => u !== "").map((u) => /^[+-]?\d+$/.test(u) ? +u : u) : [], [o,
|
|
6531
|
+
const s = r ? r.split(",").filter((u) => u !== "").map((u) => /^[+-]?\d+$/.test(u) ? +u : u) : [], [o, i, l] = s, c = vl.has(n) ? n.toLowerCase() : "custom";
|
|
6526
6532
|
switch (c) {
|
|
6527
6533
|
case "fail":
|
|
6528
6534
|
case "mismatch":
|
|
@@ -6536,7 +6542,7 @@ function Sl(t) {
|
|
|
6536
6542
|
case "max":
|
|
6537
6543
|
if (!s.length || s.length > 2) throw new Error(`Named callout must have one or two arguments "${s}"`);
|
|
6538
6544
|
if (typeof o == "string" && !/^[A-Za-z_]\w*$/.test(o)) throw new Error(`Named callout argument one must be a tag or number "${o}"`);
|
|
6539
|
-
if (s.length === 2 && (typeof
|
|
6545
|
+
if (s.length === 2 && (typeof i == "number" || !/^[<>X]$/.test(i))) throw new Error(`Named callout optional argument two must be '<', '>', or 'X' "${i}"`);
|
|
6540
6546
|
break;
|
|
6541
6547
|
case "count":
|
|
6542
6548
|
case "total_count":
|
|
@@ -6546,8 +6552,8 @@ function Sl(t) {
|
|
|
6546
6552
|
case "cmp":
|
|
6547
6553
|
if (s.length !== 3) throw new Error(`Named callout must have three arguments "${s}"`);
|
|
6548
6554
|
if (typeof o == "string" && !/^[A-Za-z_]\w*$/.test(o)) throw new Error(`Named callout argument one must be a tag or number "${o}"`);
|
|
6549
|
-
if (typeof
|
|
6550
|
-
if (typeof
|
|
6555
|
+
if (typeof i == "number" || !/^(?:[<>!=]=|[<>])$/.test(i)) throw new Error(`Named callout argument two must be '==', '!=', '>', '<', '>=', or '<=' "${i}"`);
|
|
6556
|
+
if (typeof l == "string" && !/^[A-Za-z_]\w*$/.test(l)) throw new Error(`Named callout argument three must be a tag or number "${l}"`);
|
|
6551
6557
|
break;
|
|
6552
6558
|
case "custom":
|
|
6553
6559
|
throw new Error(`Undefined callout name "${n}"`);
|
|
@@ -6603,13 +6609,13 @@ function Nl(t, e) {
|
|
|
6603
6609
|
const { raw: n, inCharClass: a } = t, r = n.slice(1);
|
|
6604
6610
|
if (!a && (r !== "0" && r.length === 1 || r[0] !== "0" && +r <= e)) return [cr(n)];
|
|
6605
6611
|
const s = [], o = r.match(/^[0-7]+|\d/g);
|
|
6606
|
-
for (let
|
|
6607
|
-
const
|
|
6612
|
+
for (let i = 0; i < o.length; i++) {
|
|
6613
|
+
const l = o[i];
|
|
6608
6614
|
let c;
|
|
6609
|
-
if (
|
|
6610
|
-
if (c = parseInt(
|
|
6611
|
-
} else c =
|
|
6612
|
-
s.push(
|
|
6615
|
+
if (i === 0 && l !== "8" && l !== "9") {
|
|
6616
|
+
if (c = parseInt(l, 8), c > 127) throw new Error(H`Octal encoded byte above 177 unsupported "${n}"`);
|
|
6617
|
+
} else c = We(l);
|
|
6618
|
+
s.push(ge(c, (i === 0 ? "\\" : "") + l));
|
|
6613
6619
|
}
|
|
6614
6620
|
return s;
|
|
6615
6621
|
}
|
|
@@ -6621,8 +6627,8 @@ function Pl(t) {
|
|
|
6621
6627
|
if (r[0] === "{") {
|
|
6622
6628
|
const s = /^\{(?<min>\d+),(?<max>\d+)\}\??$/.exec(r);
|
|
6623
6629
|
if (s) {
|
|
6624
|
-
const { min: o, max:
|
|
6625
|
-
if (+o > +
|
|
6630
|
+
const { min: o, max: i } = s.groups;
|
|
6631
|
+
if (+o > +i && r.endsWith("?")) {
|
|
6626
6632
|
n.lastIndex--, e.push(oa(r.slice(0, -1)));
|
|
6627
6633
|
continue;
|
|
6628
6634
|
}
|
|
@@ -6661,7 +6667,7 @@ function dr(t, e = {}) {
|
|
|
6661
6667
|
case "CharacterSet":
|
|
6662
6668
|
return Gl(m, s);
|
|
6663
6669
|
case "Directive":
|
|
6664
|
-
return
|
|
6670
|
+
return Hl(m.kind, { flags: m.flags });
|
|
6665
6671
|
case "GroupOpen":
|
|
6666
6672
|
return Fl(m, s, f);
|
|
6667
6673
|
case "NamedCallout":
|
|
@@ -6673,33 +6679,33 @@ function dr(t, e = {}) {
|
|
|
6673
6679
|
default:
|
|
6674
6680
|
throw new Error(`Unexpected token type "${m.type}"`);
|
|
6675
6681
|
}
|
|
6676
|
-
}, s = { capturingGroups: [], hasNumberedRef: !1, namedGroupsByName: /* @__PURE__ */ new Map(), nextIndex: 0, normalizeUnknownPropertyNames: n.normalizeUnknownPropertyNames, parent: null, skipBackrefValidation: n.skipBackrefValidation, skipLookbehindValidation: n.skipLookbehindValidation, skipPropertyNameValidation: n.skipPropertyNameValidation, subroutines: [], tokens: a.tokens, unicodePropertyMap: n.unicodePropertyMap, walk: r }, o = Zl(
|
|
6677
|
-
let
|
|
6682
|
+
}, s = { capturingGroups: [], hasNumberedRef: !1, namedGroupsByName: /* @__PURE__ */ new Map(), nextIndex: 0, normalizeUnknownPropertyNames: n.normalizeUnknownPropertyNames, parent: null, skipBackrefValidation: n.skipBackrefValidation, skipLookbehindValidation: n.skipLookbehindValidation, skipPropertyNameValidation: n.skipPropertyNameValidation, subroutines: [], tokens: a.tokens, unicodePropertyMap: n.unicodePropertyMap, walk: r }, o = Zl(Wl(a.flags));
|
|
6683
|
+
let i = o.body[0];
|
|
6678
6684
|
for (; s.nextIndex < a.tokens.length; ) {
|
|
6679
|
-
const d = r(
|
|
6680
|
-
d.type === "Alternative" ? (o.body.push(d),
|
|
6685
|
+
const d = r(i, {});
|
|
6686
|
+
d.type === "Alternative" ? (o.body.push(d), i = d) : i.body.push(d);
|
|
6681
6687
|
}
|
|
6682
|
-
const { capturingGroups:
|
|
6688
|
+
const { capturingGroups: l, hasNumberedRef: c, namedGroupsByName: u, subroutines: p } = s;
|
|
6683
6689
|
if (c && u.size && !n.rules.captureGroup) throw new Error("Numbered backref/subroutine not allowed when using named capture");
|
|
6684
6690
|
for (const { ref: d } of p) if (typeof d == "number") {
|
|
6685
|
-
if (d >
|
|
6686
|
-
d && (
|
|
6691
|
+
if (d > l.length) throw new Error("Subroutine uses a group number that's not defined");
|
|
6692
|
+
d && (l[d - 1].isSubroutined = !0);
|
|
6687
6693
|
} else if (u.has(d)) {
|
|
6688
|
-
if (u.get(d).length > 1) throw new Error(
|
|
6694
|
+
if (u.get(d).length > 1) throw new Error(H`Subroutine uses a duplicate group name "\g<${d}>"`);
|
|
6689
6695
|
u.get(d)[0].isSubroutined = !0;
|
|
6690
|
-
} else throw new Error(
|
|
6696
|
+
} else throw new Error(H`Subroutine uses a group name that's not defined "\g<${d}>"`);
|
|
6691
6697
|
return o;
|
|
6692
6698
|
}
|
|
6693
6699
|
function Ll({ kind: t }) {
|
|
6694
|
-
return mn(Ve({ "^": "line_start", $: "line_end", "\\A": "string_start", "\\b": "word_boundary", "\\B": "word_boundary", "\\G": "search_start", "\\y": "text_segment_boundary", "\\Y": "text_segment_boundary", "\\z": "string_end", "\\Z": "string_end_newline" }[t], `Unexpected assertion kind "${t}"`), { negate: t ===
|
|
6700
|
+
return mn(Ve({ "^": "line_start", $: "line_end", "\\A": "string_start", "\\b": "word_boundary", "\\B": "word_boundary", "\\G": "search_start", "\\y": "text_segment_boundary", "\\Y": "text_segment_boundary", "\\z": "string_end", "\\Z": "string_end_newline" }[t], `Unexpected assertion kind "${t}"`), { negate: t === H`\B` || t === H`\Y` });
|
|
6695
6701
|
}
|
|
6696
6702
|
function jl({ raw: t }, e) {
|
|
6697
6703
|
const n = /^\\k[<']/.test(t), a = n ? t.slice(3, -1) : t.slice(1), r = (s, o = !1) => {
|
|
6698
|
-
const
|
|
6699
|
-
let
|
|
6700
|
-
if (s >
|
|
6704
|
+
const i = e.capturingGroups.length;
|
|
6705
|
+
let l = !1;
|
|
6706
|
+
if (s > i) if (e.skipBackrefValidation) l = !0;
|
|
6701
6707
|
else throw new Error(`Not enough capturing groups defined to the left "${t}"`);
|
|
6702
|
-
return e.hasNumberedRef = !0, fn(o ?
|
|
6708
|
+
return e.hasNumberedRef = !0, fn(o ? i + 1 - s : s, { orphan: l });
|
|
6703
6709
|
};
|
|
6704
6710
|
if (n) {
|
|
6705
6711
|
const s = /^(?<sign>-?)0*(?<num>[1-9]\d*)$/.exec(a);
|
|
@@ -6711,45 +6717,45 @@ function jl({ raw: t }, e) {
|
|
|
6711
6717
|
return r(+a);
|
|
6712
6718
|
}
|
|
6713
6719
|
function Ml(t, e, n) {
|
|
6714
|
-
const { tokens: a, walk: r } = e, s = e.parent, o = s.body.at(-1),
|
|
6715
|
-
if (!n.isCheckingRangeEnd && o && o.type !== "CharacterClass" && o.type !== "CharacterClassRange" &&
|
|
6716
|
-
const
|
|
6717
|
-
if (o.type === "Character" &&
|
|
6720
|
+
const { tokens: a, walk: r } = e, s = e.parent, o = s.body.at(-1), i = a[e.nextIndex];
|
|
6721
|
+
if (!n.isCheckingRangeEnd && o && o.type !== "CharacterClass" && o.type !== "CharacterClassRange" && i && i.type !== "CharacterClassOpen" && i.type !== "CharacterClassClose" && i.type !== "CharacterClassIntersector") {
|
|
6722
|
+
const l = r(s, { ...n, isCheckingRangeEnd: !0 });
|
|
6723
|
+
if (o.type === "Character" && l.type === "Character") return s.body.pop(), ql(o, l);
|
|
6718
6724
|
throw new Error("Invalid character class range");
|
|
6719
6725
|
}
|
|
6720
|
-
return Bt(
|
|
6726
|
+
return Bt(We("-"));
|
|
6721
6727
|
}
|
|
6722
6728
|
function Ol({ negate: t }, e, n) {
|
|
6723
6729
|
const { tokens: a, walk: r } = e, s = a[e.nextIndex], o = [bt()];
|
|
6724
|
-
let
|
|
6725
|
-
for (;
|
|
6726
|
-
if (
|
|
6730
|
+
let i = ua(s);
|
|
6731
|
+
for (; i.type !== "CharacterClassClose"; ) {
|
|
6732
|
+
if (i.type === "CharacterClassIntersector") o.push(bt()), e.nextIndex++;
|
|
6727
6733
|
else {
|
|
6728
6734
|
const c = o.at(-1);
|
|
6729
6735
|
c.body.push(r(c, n));
|
|
6730
6736
|
}
|
|
6731
|
-
|
|
6737
|
+
i = ua(a[e.nextIndex], s);
|
|
6732
6738
|
}
|
|
6733
|
-
const
|
|
6734
|
-
return o.length === 1 ?
|
|
6739
|
+
const l = bt({ negate: t });
|
|
6740
|
+
return o.length === 1 ? l.body = o[0].body : (l.kind = "intersection", l.body = o.map((c) => c.body.length === 1 ? c.body[0] : c)), e.nextIndex++, l;
|
|
6735
6741
|
}
|
|
6736
6742
|
function Gl({ kind: t, negate: e, value: n }, a) {
|
|
6737
6743
|
const { normalizeUnknownPropertyNames: r, skipPropertyNameValidation: s, unicodePropertyMap: o } = a;
|
|
6738
6744
|
if (t === "property") {
|
|
6739
|
-
const
|
|
6740
|
-
if (An.has(
|
|
6745
|
+
const i = Tt(n);
|
|
6746
|
+
if (An.has(i) && !(o != null && o.has(i))) t = "posix", n = i;
|
|
6741
6747
|
else return Ge(n, { negate: e, normalizeUnknownPropertyNames: r, skipPropertyNameValidation: s, unicodePropertyMap: o });
|
|
6742
6748
|
}
|
|
6743
6749
|
return t === "posix" ? Xl(n, { negate: e }) : hn(t, { negate: e });
|
|
6744
6750
|
}
|
|
6745
6751
|
function Fl(t, e, n) {
|
|
6746
|
-
const { tokens: a, capturingGroups: r, namedGroupsByName: s, skipLookbehindValidation: o, walk:
|
|
6747
|
-
if (
|
|
6752
|
+
const { tokens: a, capturingGroups: r, namedGroupsByName: s, skipLookbehindValidation: o, walk: i } = e, l = Kl(t), c = l.type === "AbsenceFunction", u = ca(l), p = u && l.negate;
|
|
6753
|
+
if (l.type === "CapturingGroup" && (r.push(l), l.name && cl(s, l.name, []).push(l)), c && n.isInAbsenceFunction) throw new Error("Nested absence function not supported by Oniguruma");
|
|
6748
6754
|
let d = pa(a[e.nextIndex]);
|
|
6749
6755
|
for (; d.type !== "GroupClose"; ) {
|
|
6750
|
-
if (d.type === "Alternator")
|
|
6756
|
+
if (d.type === "Alternator") l.body.push(Be()), e.nextIndex++;
|
|
6751
6757
|
else {
|
|
6752
|
-
const f =
|
|
6758
|
+
const f = l.body.at(-1), m = i(f, { ...n, isInAbsenceFunction: n.isInAbsenceFunction || c, isInLookbehind: n.isInLookbehind || u, isInNegLookbehind: n.isInNegLookbehind || p });
|
|
6753
6759
|
if (f.body.push(m), (u || n.isInLookbehind) && !o) {
|
|
6754
6760
|
const _ = "Lookbehind includes a pattern not allowed by Oniguruma";
|
|
6755
6761
|
if (p || n.isInNegLookbehind) {
|
|
@@ -6759,7 +6765,7 @@ function Fl(t, e, n) {
|
|
|
6759
6765
|
}
|
|
6760
6766
|
d = pa(a[e.nextIndex]);
|
|
6761
6767
|
}
|
|
6762
|
-
return e.nextIndex++,
|
|
6768
|
+
return e.nextIndex++, l;
|
|
6763
6769
|
}
|
|
6764
6770
|
function Dl({ kind: t, min: e, max: n }, a) {
|
|
6765
6771
|
const r = a.parent, s = r.body.at(-1);
|
|
@@ -6772,8 +6778,8 @@ function Ul({ raw: t }, e) {
|
|
|
6772
6778
|
let r = t.slice(3, -1);
|
|
6773
6779
|
const s = /^(?<sign>[-+]?)0*(?<num>[1-9]\d*)$/.exec(r);
|
|
6774
6780
|
if (s) {
|
|
6775
|
-
const
|
|
6776
|
-
if (e.hasNumberedRef = !0, r = { "":
|
|
6781
|
+
const i = +s.groups.num, l = n.length;
|
|
6782
|
+
if (e.hasNumberedRef = !0, r = { "": i, "+": l + i, "-": l + 1 - i }[s.groups.sign], r < 1) throw new Error("Invalid subroutine number");
|
|
6777
6783
|
} else r === "0" && (r = 0);
|
|
6778
6784
|
const o = hr(r);
|
|
6779
6785
|
return a.push(o), o;
|
|
@@ -6818,12 +6824,12 @@ function hn(t, e) {
|
|
|
6818
6824
|
const n = !!(e != null && e.negate), a = { type: "CharacterSet", kind: t };
|
|
6819
6825
|
return (t === "digit" || t === "hex" || t === "newline" || t === "space" || t === "word") && (a.negate = n), (t === "text_segment" || t === "newline" && !n) && (a.variableLength = !0), a;
|
|
6820
6826
|
}
|
|
6821
|
-
function
|
|
6827
|
+
function Hl(t, e = {}) {
|
|
6822
6828
|
if (t === "keep") return { type: "Directive", kind: t };
|
|
6823
6829
|
if (t === "flags") return { type: "Directive", kind: t, flags: Ve(e.flags) };
|
|
6824
6830
|
throw new Error(`Unexpected directive kind "${t}"`);
|
|
6825
6831
|
}
|
|
6826
|
-
function
|
|
6832
|
+
function Wl(t) {
|
|
6827
6833
|
return { type: "Flags", ...t };
|
|
6828
6834
|
}
|
|
6829
6835
|
function oe(t) {
|
|
@@ -6859,7 +6865,7 @@ function Ge(t, e) {
|
|
|
6859
6865
|
let a = (r = n.unicodePropertyMap) == null ? void 0 : r.get(Tt(t));
|
|
6860
6866
|
if (!a) {
|
|
6861
6867
|
if (n.normalizeUnknownPropertyNames) a = Ql(t);
|
|
6862
|
-
else if (n.unicodePropertyMap && !n.skipPropertyNameValidation) throw new Error(
|
|
6868
|
+
else if (n.unicodePropertyMap && !n.skipPropertyNameValidation) throw new Error(H`Invalid Unicode property "\p{${t}}"`);
|
|
6863
6869
|
}
|
|
6864
6870
|
return { type: "CharacterSet", kind: "property", value: a ?? t, negate: n.negate };
|
|
6865
6871
|
}
|
|
@@ -6913,29 +6919,29 @@ function pa(t) {
|
|
|
6913
6919
|
}
|
|
6914
6920
|
function Je(t, e, n = null) {
|
|
6915
6921
|
function a(s, o) {
|
|
6916
|
-
for (let
|
|
6917
|
-
const
|
|
6918
|
-
|
|
6922
|
+
for (let i = 0; i < s.length; i++) {
|
|
6923
|
+
const l = r(s[i], o, i, s);
|
|
6924
|
+
i = Math.max(-1, i + l);
|
|
6919
6925
|
}
|
|
6920
6926
|
}
|
|
6921
|
-
function r(s, o = null,
|
|
6927
|
+
function r(s, o = null, i = null, l = null) {
|
|
6922
6928
|
var b, w;
|
|
6923
6929
|
let c = 0, u = !1;
|
|
6924
|
-
const p = { node: s, parent: o, key:
|
|
6925
|
-
mt(
|
|
6930
|
+
const p = { node: s, parent: o, key: i, container: l, root: t, remove() {
|
|
6931
|
+
mt(l).splice(Math.max(0, je(i) + c), 1), c--, u = !0;
|
|
6926
6932
|
}, removeAllNextSiblings() {
|
|
6927
|
-
return mt(
|
|
6933
|
+
return mt(l).splice(je(i) + 1);
|
|
6928
6934
|
}, removeAllPrevSiblings() {
|
|
6929
|
-
const k = je(
|
|
6930
|
-
return c -= k, mt(
|
|
6935
|
+
const k = je(i) + c;
|
|
6936
|
+
return c -= k, mt(l).splice(0, Math.max(0, k));
|
|
6931
6937
|
}, replaceWith(k, v = {}) {
|
|
6932
6938
|
const A = !!v.traverse;
|
|
6933
|
-
|
|
6939
|
+
l ? l[Math.max(0, je(i) + c)] = k : Ve(o, "Can't replace root node")[i] = k, A && r(k, o, i, l), u = !0;
|
|
6934
6940
|
}, replaceWithMultiple(k, v = {}) {
|
|
6935
6941
|
const A = !!v.traverse;
|
|
6936
|
-
if (mt(
|
|
6942
|
+
if (mt(l).splice(Math.max(0, je(i) + c), 1, ...k), c += k.length - 1, A) {
|
|
6937
6943
|
let O = 0;
|
|
6938
|
-
for (let I = 0; I < k.length; I++) O += r(k[I], o, je(
|
|
6944
|
+
for (let I = 0; I < k.length; I++) O += r(k[I], o, je(i) + I + O, l);
|
|
6939
6945
|
}
|
|
6940
6946
|
u = !0;
|
|
6941
6947
|
}, skip() {
|
|
@@ -6995,25 +7001,25 @@ function ec(t, e) {
|
|
|
6995
7001
|
function tc(t, e, n, a) {
|
|
6996
7002
|
return t.slice(0, e) + a + t.slice(e + n.length);
|
|
6997
7003
|
}
|
|
6998
|
-
const
|
|
7004
|
+
const re = Object.freeze({
|
|
6999
7005
|
DEFAULT: "DEFAULT",
|
|
7000
7006
|
CHAR_CLASS: "CHAR_CLASS"
|
|
7001
7007
|
});
|
|
7002
7008
|
function Rn(t, e, n, a) {
|
|
7003
7009
|
const r = new RegExp(String.raw`${e}|(?<$skip>\[\^?|\\?.)`, "gsu"), s = [!1];
|
|
7004
|
-
let o = 0,
|
|
7005
|
-
for (const
|
|
7006
|
-
const { 0: c, groups: { $skip: u } } =
|
|
7007
|
-
if (!u && (!a || a ===
|
|
7008
|
-
n instanceof Function ?
|
|
7009
|
-
context: o ?
|
|
7010
|
+
let o = 0, i = "";
|
|
7011
|
+
for (const l of t.matchAll(r)) {
|
|
7012
|
+
const { 0: c, groups: { $skip: u } } = l;
|
|
7013
|
+
if (!u && (!a || a === re.DEFAULT == !o)) {
|
|
7014
|
+
n instanceof Function ? i += n(l, {
|
|
7015
|
+
context: o ? re.CHAR_CLASS : re.DEFAULT,
|
|
7010
7016
|
negated: s[s.length - 1]
|
|
7011
|
-
}) :
|
|
7017
|
+
}) : i += n;
|
|
7012
7018
|
continue;
|
|
7013
7019
|
}
|
|
7014
|
-
c[0] === "[" ? (o++, s.push(c[1] === "^")) : c === "]" && o && (o--, s.pop()),
|
|
7020
|
+
c[0] === "[" ? (o++, s.push(c[1] === "^")) : c === "]" && o && (o--, s.pop()), i += c;
|
|
7015
7021
|
}
|
|
7016
|
-
return
|
|
7022
|
+
return i;
|
|
7017
7023
|
}
|
|
7018
7024
|
function br(t, e, n, a) {
|
|
7019
7025
|
Rn(t, e, n, a);
|
|
@@ -7025,10 +7031,10 @@ function nc(t, e, n = 0, a) {
|
|
|
7025
7031
|
r.lastIndex = n;
|
|
7026
7032
|
let s = 0, o;
|
|
7027
7033
|
for (; o = r.exec(t); ) {
|
|
7028
|
-
const { 0:
|
|
7029
|
-
if (!
|
|
7034
|
+
const { 0: i, groups: { $skip: l } } = o;
|
|
7035
|
+
if (!l && (!a || a === re.DEFAULT == !s))
|
|
7030
7036
|
return o;
|
|
7031
|
-
|
|
7037
|
+
i === "[" ? s++ : i === "]" && s && s--, r.lastIndex == o.index && r.lastIndex++;
|
|
7032
7038
|
}
|
|
7033
7039
|
return null;
|
|
7034
7040
|
}
|
|
@@ -7040,14 +7046,14 @@ function ac(t, e) {
|
|
|
7040
7046
|
n.lastIndex = e;
|
|
7041
7047
|
let a = t.length, r = 0, s = 1, o;
|
|
7042
7048
|
for (; o = n.exec(t); ) {
|
|
7043
|
-
const [
|
|
7044
|
-
if (
|
|
7049
|
+
const [i] = o;
|
|
7050
|
+
if (i === "[")
|
|
7045
7051
|
r++;
|
|
7046
7052
|
else if (r)
|
|
7047
|
-
|
|
7048
|
-
else if (
|
|
7053
|
+
i === "]" && r--;
|
|
7054
|
+
else if (i === "(")
|
|
7049
7055
|
s++;
|
|
7050
|
-
else if (
|
|
7056
|
+
else if (i === ")" && (s--, !s)) {
|
|
7051
7057
|
a = o.index;
|
|
7052
7058
|
break;
|
|
7053
7059
|
}
|
|
@@ -7064,8 +7070,8 @@ function rc(t, e) {
|
|
|
7064
7070
|
captureTransfers: a,
|
|
7065
7071
|
hiddenCaptures: n
|
|
7066
7072
|
};
|
|
7067
|
-
const r = "(?>", s = "(?:(?=(", o = [0],
|
|
7068
|
-
let
|
|
7073
|
+
const r = "(?>", s = "(?:(?=(", o = [0], i = [];
|
|
7074
|
+
let l = 0, c = 0, u = NaN, p;
|
|
7069
7075
|
do {
|
|
7070
7076
|
p = !1;
|
|
7071
7077
|
let d = 0, f = 0, m = !1, _;
|
|
@@ -7080,12 +7086,12 @@ function rc(t, e) {
|
|
|
7080
7086
|
else if (m && k)
|
|
7081
7087
|
f++;
|
|
7082
7088
|
else if (w)
|
|
7083
|
-
m ? f++ : (
|
|
7089
|
+
m ? f++ : (l++, o.push(l + c));
|
|
7084
7090
|
else if (g === ")" && m) {
|
|
7085
7091
|
if (!f) {
|
|
7086
7092
|
c++;
|
|
7087
|
-
const v =
|
|
7088
|
-
if (t = `${t.slice(0, u)}${s}${t.slice(u + r.length, b)}))<$$${v}>)${t.slice(b + 1)}`, p = !0,
|
|
7093
|
+
const v = l + c;
|
|
7094
|
+
if (t = `${t.slice(0, u)}${s}${t.slice(u + r.length, b)}))<$$${v}>)${t.slice(b + 1)}`, p = !0, i.push(v), ec(n, v), a.size) {
|
|
7089
7095
|
const A = /* @__PURE__ */ new Map();
|
|
7090
7096
|
a.forEach((O, I) => {
|
|
7091
7097
|
A.set(
|
|
@@ -7100,7 +7106,7 @@ function rc(t, e) {
|
|
|
7100
7106
|
}
|
|
7101
7107
|
}
|
|
7102
7108
|
} while (p);
|
|
7103
|
-
return n.push(...
|
|
7109
|
+
return n.push(...i), t = Rn(
|
|
7104
7110
|
t,
|
|
7105
7111
|
String.raw`\\(?<backrefNum>[1-9]\d*)|<\$\$(?<wrappedBackrefNum>\d+)>`,
|
|
7106
7112
|
({ 0: d, groups: { backrefNum: f, wrappedBackrefNum: m } }) => {
|
|
@@ -7112,7 +7118,7 @@ function rc(t, e) {
|
|
|
7112
7118
|
}
|
|
7113
7119
|
return `\\${m}`;
|
|
7114
7120
|
},
|
|
7115
|
-
|
|
7121
|
+
re.DEFAULT
|
|
7116
7122
|
), {
|
|
7117
7123
|
pattern: t,
|
|
7118
7124
|
captureTransfers: a,
|
|
@@ -7143,37 +7149,37 @@ function sc(t) {
|
|
|
7143
7149
|
const e = [];
|
|
7144
7150
|
let n = null, a = null, r = "", s = 0, o;
|
|
7145
7151
|
for (Zt.lastIndex = 0; o = Zt.exec(t); ) {
|
|
7146
|
-
const { 0:
|
|
7147
|
-
if (
|
|
7148
|
-
s || (a =
|
|
7149
|
-
else if (
|
|
7152
|
+
const { 0: i, index: l, groups: { qBase: c, qMod: u, invalidQ: p } } = o;
|
|
7153
|
+
if (i === "[")
|
|
7154
|
+
s || (a = l), s++;
|
|
7155
|
+
else if (i === "]")
|
|
7150
7156
|
s ? s-- : a = null;
|
|
7151
7157
|
else if (!s)
|
|
7152
7158
|
if (u === "+" && r && !r.startsWith("(")) {
|
|
7153
7159
|
if (p)
|
|
7154
|
-
throw new Error(`Invalid quantifier "${
|
|
7160
|
+
throw new Error(`Invalid quantifier "${i}"`);
|
|
7155
7161
|
let d = -1;
|
|
7156
7162
|
if (/^\{\d+\}$/.test(c))
|
|
7157
|
-
t = tc(t,
|
|
7163
|
+
t = tc(t, l + c.length, u, "");
|
|
7158
7164
|
else {
|
|
7159
7165
|
if (r === ")" || r === "]") {
|
|
7160
7166
|
const f = r === ")" ? n : a;
|
|
7161
7167
|
if (f === null)
|
|
7162
7168
|
throw new Error(`Invalid unmatched "${r}"`);
|
|
7163
|
-
t = `${t.slice(0, f)}(?>${t.slice(f,
|
|
7169
|
+
t = `${t.slice(0, f)}(?>${t.slice(f, l)}${c})${t.slice(l + i.length)}`;
|
|
7164
7170
|
} else
|
|
7165
|
-
t = `${t.slice(0,
|
|
7171
|
+
t = `${t.slice(0, l - r.length)}(?>${r}${c})${t.slice(l + i.length)}`;
|
|
7166
7172
|
d += 4;
|
|
7167
7173
|
}
|
|
7168
7174
|
Zt.lastIndex += d;
|
|
7169
|
-
} else
|
|
7170
|
-
r =
|
|
7175
|
+
} else i[0] === "(" ? e.push(l) : i === ")" && (n = e.length ? e.pop() : null);
|
|
7176
|
+
r = i;
|
|
7171
7177
|
}
|
|
7172
7178
|
return {
|
|
7173
7179
|
pattern: t
|
|
7174
7180
|
};
|
|
7175
7181
|
}
|
|
7176
|
-
const
|
|
7182
|
+
const ae = String.raw, oc = ae`\\g<(?<gRNameOrNum>[^>&]+)&R=(?<gRDepth>[^>]+)>`, gn = ae`\(\?R=(?<rDepth>[^\)]+)\)|${oc}`, Lt = ae`\(\?<(?![=!])(?<captureName>[^>]+)>`, _r = ae`${Lt}|(?<unnamed>\()(?!\?)`, xe = new RegExp(ae`${Lt}|${gn}|\(\?|\\?.`, "gsu"), Kt = "Cannot use multiple overlapping recursions";
|
|
7177
7183
|
function ic(t, e) {
|
|
7178
7184
|
const { hiddenCaptures: n, mode: a } = {
|
|
7179
7185
|
hiddenCaptures: [],
|
|
@@ -7187,9 +7193,9 @@ function ic(t, e) {
|
|
|
7187
7193
|
captureTransfers: r,
|
|
7188
7194
|
hiddenCaptures: n
|
|
7189
7195
|
};
|
|
7190
|
-
if (a === "plugin" && ft(t,
|
|
7196
|
+
if (a === "plugin" && ft(t, ae`\(\?\(DEFINE\)`, re.DEFAULT))
|
|
7191
7197
|
throw new Error("DEFINE groups cannot be used with recursion");
|
|
7192
|
-
const s = [], o = ft(t,
|
|
7198
|
+
const s = [], o = ft(t, ae`\\[1-9]`, re.DEFAULT), i = /* @__PURE__ */ new Map(), l = [];
|
|
7193
7199
|
let c = !1, u = 0, p = 0, d;
|
|
7194
7200
|
for (xe.lastIndex = 0; d = xe.exec(t); ) {
|
|
7195
7201
|
const { 0: f, groups: { captureName: m, rDepth: _, gRNameOrNum: g, gRDepth: b } } = d;
|
|
@@ -7207,7 +7213,7 @@ function ic(t, e) {
|
|
|
7207
7213
|
`${a === "external" ? "Backrefs" : "Numbered backrefs"} cannot be used with global recursion`
|
|
7208
7214
|
);
|
|
7209
7215
|
const w = t.slice(0, d.index), k = t.slice(xe.lastIndex);
|
|
7210
|
-
if (ft(k, gn,
|
|
7216
|
+
if (ft(k, gn, re.DEFAULT))
|
|
7211
7217
|
throw new Error(Kt);
|
|
7212
7218
|
const v = +_ - 1;
|
|
7213
7219
|
t = fa(
|
|
@@ -7230,16 +7236,16 @@ function ic(t, e) {
|
|
|
7230
7236
|
} else if (g) {
|
|
7231
7237
|
ma(b);
|
|
7232
7238
|
let w = !1;
|
|
7233
|
-
for (const T of
|
|
7239
|
+
for (const T of l)
|
|
7234
7240
|
if (T.name === g || T.num === +g) {
|
|
7235
7241
|
if (w = !0, T.hasRecursedWithin)
|
|
7236
7242
|
throw new Error(Kt);
|
|
7237
7243
|
break;
|
|
7238
7244
|
}
|
|
7239
7245
|
if (!w)
|
|
7240
|
-
throw new Error(
|
|
7241
|
-
const k =
|
|
7242
|
-
if (o && ft(v,
|
|
7246
|
+
throw new Error(ae`Recursive \g cannot be used outside the referenced group "${a === "external" ? g : ae`\g<${g}&R=${b}>`}"`);
|
|
7247
|
+
const k = i.get(g), v = ac(t, k);
|
|
7248
|
+
if (o && ft(v, ae`${Lt}|\((?!\?)`, re.DEFAULT))
|
|
7243
7249
|
throw new Error(
|
|
7244
7250
|
// When used in `external` mode by transpilers other than Regex+, backrefs might have
|
|
7245
7251
|
// gone through conversion from named to numbered, so avoid a misleading error
|
|
@@ -7262,17 +7268,17 @@ function ic(t, e) {
|
|
|
7262
7268
|
I,
|
|
7263
7269
|
p
|
|
7264
7270
|
);
|
|
7265
|
-
const
|
|
7266
|
-
t = `${
|
|
7271
|
+
const x = t.slice(0, k), $ = t.slice(k + v.length);
|
|
7272
|
+
t = `${x}${ce}${$}`, xe.lastIndex += ce.length - f.length - A.length - O.length, l.forEach((T) => T.hasRecursedWithin = !0), c = !0;
|
|
7267
7273
|
} else if (m)
|
|
7268
|
-
p++,
|
|
7274
|
+
p++, i.set(String(p), xe.lastIndex), i.set(m, xe.lastIndex), l.push({
|
|
7269
7275
|
num: p,
|
|
7270
7276
|
name: m
|
|
7271
7277
|
});
|
|
7272
7278
|
else if (f[0] === "(") {
|
|
7273
7279
|
const w = f === "(";
|
|
7274
|
-
w && (p++,
|
|
7275
|
-
} else f === ")" &&
|
|
7280
|
+
w && (p++, i.set(String(p), xe.lastIndex)), l.push(w ? { num: p } : {});
|
|
7281
|
+
} else f === ")" && l.pop();
|
|
7276
7282
|
}
|
|
7277
7283
|
return n.push(...s), {
|
|
7278
7284
|
pattern: t,
|
|
@@ -7288,27 +7294,27 @@ function ma(t) {
|
|
|
7288
7294
|
throw new Error(e);
|
|
7289
7295
|
}
|
|
7290
7296
|
function fa(t, e, n, a, r, s, o) {
|
|
7291
|
-
const
|
|
7297
|
+
const i = /* @__PURE__ */ new Set();
|
|
7292
7298
|
a && br(t + e, Lt, ({ groups: { captureName: c } }) => {
|
|
7293
|
-
|
|
7294
|
-
},
|
|
7295
|
-
const
|
|
7299
|
+
i.add(c);
|
|
7300
|
+
}, re.DEFAULT);
|
|
7301
|
+
const l = [
|
|
7296
7302
|
n,
|
|
7297
|
-
a ?
|
|
7303
|
+
a ? i : null,
|
|
7298
7304
|
r,
|
|
7299
7305
|
s,
|
|
7300
7306
|
o
|
|
7301
7307
|
];
|
|
7302
|
-
return `${t}${ha(`(?:${t}`, "forward", ...
|
|
7308
|
+
return `${t}${ha(`(?:${t}`, "forward", ...l)}(?:)${ha(`${e})`, "backward", ...l)}${e}`;
|
|
7303
7309
|
}
|
|
7304
7310
|
function ha(t, e, n, a, r, s, o) {
|
|
7305
|
-
const
|
|
7311
|
+
const l = (u) => e === "forward" ? u + 2 : n - u + 2 - 1;
|
|
7306
7312
|
let c = "";
|
|
7307
7313
|
for (let u = 0; u < n; u++) {
|
|
7308
|
-
const p =
|
|
7314
|
+
const p = l(u);
|
|
7309
7315
|
c += Rn(
|
|
7310
7316
|
t,
|
|
7311
|
-
|
|
7317
|
+
ae`${_r}|\\k<(?<backref>[^>]+)>`,
|
|
7312
7318
|
({ 0: d, groups: { captureName: f, unnamed: m, backref: _ } }) => {
|
|
7313
7319
|
if (_ && a && !a.has(_))
|
|
7314
7320
|
return d;
|
|
@@ -7317,9 +7323,9 @@ function ha(t, e, n, a, r, s, o) {
|
|
|
7317
7323
|
const b = o + s.length + 1;
|
|
7318
7324
|
return s.push(b), lc(r, b), m ? d : `(?<${f}${g}>`;
|
|
7319
7325
|
}
|
|
7320
|
-
return
|
|
7326
|
+
return ae`\k<${_}${g}>`;
|
|
7321
7327
|
},
|
|
7322
|
-
|
|
7328
|
+
re.DEFAULT
|
|
7323
7329
|
);
|
|
7324
7330
|
}
|
|
7325
7331
|
return c;
|
|
@@ -7331,27 +7337,27 @@ function lc(t, e) {
|
|
|
7331
7337
|
function ga(t, e, n, a, r, s) {
|
|
7332
7338
|
if (t.size && a) {
|
|
7333
7339
|
let o = 0;
|
|
7334
|
-
br(e, _r, () => o++,
|
|
7335
|
-
const
|
|
7340
|
+
br(e, _r, () => o++, re.DEFAULT);
|
|
7341
|
+
const i = s - o + r, l = /* @__PURE__ */ new Map();
|
|
7336
7342
|
return t.forEach((c, u) => {
|
|
7337
|
-
const p = (a - o * n) / n, d = o * n, f = u >
|
|
7343
|
+
const p = (a - o * n) / n, d = o * n, f = u > i + o ? u + a : u, m = [];
|
|
7338
7344
|
for (const _ of c)
|
|
7339
|
-
if (_ <=
|
|
7345
|
+
if (_ <= i)
|
|
7340
7346
|
m.push(_);
|
|
7341
|
-
else if (_ >
|
|
7347
|
+
else if (_ > i + o + p)
|
|
7342
7348
|
m.push(_ + a);
|
|
7343
|
-
else if (_ <=
|
|
7349
|
+
else if (_ <= i + o)
|
|
7344
7350
|
for (let g = 0; g <= n; g++)
|
|
7345
7351
|
m.push(_ + o * g);
|
|
7346
7352
|
else
|
|
7347
7353
|
for (let g = 0; g <= n; g++)
|
|
7348
7354
|
m.push(_ + d + p * g);
|
|
7349
|
-
|
|
7350
|
-
}),
|
|
7355
|
+
l.set(f, m);
|
|
7356
|
+
}), l;
|
|
7351
7357
|
}
|
|
7352
7358
|
return t;
|
|
7353
7359
|
}
|
|
7354
|
-
var U = String.fromCodePoint, C = String.raw,
|
|
7360
|
+
var U = String.fromCodePoint, C = String.raw, be = {
|
|
7355
7361
|
flagGroups: (() => {
|
|
7356
7362
|
try {
|
|
7357
7363
|
new RegExp("(?i:)");
|
|
@@ -7369,7 +7375,7 @@ var U = String.fromCodePoint, C = String.raw, ge = {
|
|
|
7369
7375
|
return !0;
|
|
7370
7376
|
})()
|
|
7371
7377
|
};
|
|
7372
|
-
|
|
7378
|
+
be.bugFlagVLiteralHyphenIsRange = be.unicodeSets ? (() => {
|
|
7373
7379
|
try {
|
|
7374
7380
|
new RegExp(C`[\d\-a]`, "v");
|
|
7375
7381
|
} catch {
|
|
@@ -7377,7 +7383,7 @@ ge.bugFlagVLiteralHyphenIsRange = ge.unicodeSets ? (() => {
|
|
|
7377
7383
|
}
|
|
7378
7384
|
return !1;
|
|
7379
7385
|
})() : !1;
|
|
7380
|
-
|
|
7386
|
+
be.bugNestedClassIgnoresNegation = be.unicodeSets && new RegExp("[[^a]]", "v").test("a");
|
|
7381
7387
|
function It(t, { enable: e, disable: n }) {
|
|
7382
7388
|
return {
|
|
7383
7389
|
dotAll: !(n != null && n.dotAll) && !!(e != null && e.dotAll || t.dotAll),
|
|
@@ -7453,7 +7459,7 @@ function $r(t = {}) {
|
|
|
7453
7459
|
...t.rules
|
|
7454
7460
|
}
|
|
7455
7461
|
};
|
|
7456
|
-
return e.target === "auto" && (e.target =
|
|
7462
|
+
return e.target === "auto" && (e.target = be.flagGroups ? "ES2025" : be.unicodeSets ? "ES2024" : "ES2018"), e;
|
|
7457
7463
|
}
|
|
7458
7464
|
var pc = "[ -\r ]", dc = /* @__PURE__ */ new Set([
|
|
7459
7465
|
U(304),
|
|
@@ -7574,16 +7580,16 @@ XID_Start XIDS`.split(/\s/).map((t) => [Tt(t), t])
|
|
|
7574
7580
|
[U(969), U(8486)]
|
|
7575
7581
|
// ω, Ω (Ohm)
|
|
7576
7582
|
]), hc = new Map([
|
|
7577
|
-
|
|
7578
|
-
|
|
7579
|
-
|
|
7580
|
-
|
|
7583
|
+
_e(453),
|
|
7584
|
+
_e(456),
|
|
7585
|
+
_e(459),
|
|
7586
|
+
_e(498),
|
|
7581
7587
|
...Jt(8072, 8079),
|
|
7582
7588
|
...Jt(8088, 8095),
|
|
7583
7589
|
...Jt(8104, 8111),
|
|
7584
|
-
|
|
7585
|
-
|
|
7586
|
-
|
|
7590
|
+
_e(8124),
|
|
7591
|
+
_e(8140),
|
|
7592
|
+
_e(8188)
|
|
7587
7593
|
]), gc = /* @__PURE__ */ new Map([
|
|
7588
7594
|
["alnum", C`[\p{Alpha}\p{Nd}]`],
|
|
7589
7595
|
["alpha", C`\p{Alpha}`],
|
|
@@ -7607,12 +7613,12 @@ function bc(t, e) {
|
|
|
7607
7613
|
n.push(a);
|
|
7608
7614
|
return n;
|
|
7609
7615
|
}
|
|
7610
|
-
function
|
|
7616
|
+
function _e(t) {
|
|
7611
7617
|
const e = U(t);
|
|
7612
7618
|
return [e.toLowerCase(), e];
|
|
7613
7619
|
}
|
|
7614
7620
|
function Jt(t, e) {
|
|
7615
|
-
return bc(t, e).map((n) =>
|
|
7621
|
+
return bc(t, e).map((n) => _e(n));
|
|
7616
7622
|
}
|
|
7617
7623
|
var kr = /* @__PURE__ */ new Set([
|
|
7618
7624
|
"Lower",
|
|
@@ -7721,19 +7727,19 @@ var _c = {
|
|
|
7721
7727
|
}
|
|
7722
7728
|
}
|
|
7723
7729
|
},
|
|
7724
|
-
Assertion({ node: t, parent: e, key: n, container: a, root: r, remove: s, replaceWith: o },
|
|
7725
|
-
const { kind:
|
|
7726
|
-
if (
|
|
7730
|
+
Assertion({ node: t, parent: e, key: n, container: a, root: r, remove: s, replaceWith: o }, i) {
|
|
7731
|
+
const { kind: l, negate: c } = t, { asciiWordBoundaries: u, avoidSubclass: p, supportedGNodes: d, wordIsAscii: f } = i;
|
|
7732
|
+
if (l === "text_segment_boundary")
|
|
7727
7733
|
throw new Error(`Unsupported text segment boundary "\\${c ? "Y" : "y"}"`);
|
|
7728
|
-
if (
|
|
7734
|
+
if (l === "line_end")
|
|
7729
7735
|
o(G(Se({ body: [
|
|
7730
7736
|
Be({ body: [mn("string_end")] }),
|
|
7731
7737
|
Be({ body: [Bt(10)] })
|
|
7732
7738
|
// `\n`
|
|
7733
7739
|
] }), e));
|
|
7734
|
-
else if (
|
|
7740
|
+
else if (l === "line_start")
|
|
7735
7741
|
o(G(de(C`(?<=\A|\n(?!\z))`, { skipLookbehindValidation: !0 }), e));
|
|
7736
|
-
else if (
|
|
7742
|
+
else if (l === "search_start")
|
|
7737
7743
|
if (d.has(t))
|
|
7738
7744
|
r.flags.sticky = !0, s();
|
|
7739
7745
|
else {
|
|
@@ -7743,18 +7749,18 @@ var _c = {
|
|
|
7743
7749
|
else {
|
|
7744
7750
|
if (p)
|
|
7745
7751
|
throw new Error(C`Uses "\G" in a way that requires a subclass`);
|
|
7746
|
-
o(
|
|
7752
|
+
o($e(mn("string_start"), e)), i.strategy = "clip_search";
|
|
7747
7753
|
}
|
|
7748
7754
|
}
|
|
7749
|
-
else if (!(
|
|
7755
|
+
else if (!(l === "string_end" || l === "string_start")) if (l === "string_end_newline")
|
|
7750
7756
|
o(G(de(C`(?=\n?\z)`), e));
|
|
7751
|
-
else if (
|
|
7757
|
+
else if (l === "word_boundary") {
|
|
7752
7758
|
if (!f && !u) {
|
|
7753
7759
|
const m = `(?:(?<=${pe})(?!${pe})|(?<!${pe})(?=${pe}))`, _ = `(?:(?<=${pe})(?=${pe})|(?<!${pe})(?!${pe}))`;
|
|
7754
7760
|
o(G(de(c ? _ : m), e));
|
|
7755
7761
|
}
|
|
7756
7762
|
} else
|
|
7757
|
-
throw new Error(`Unexpected assertion kind "${
|
|
7763
|
+
throw new Error(`Unexpected assertion kind "${l}"`);
|
|
7758
7764
|
},
|
|
7759
7765
|
Backreference({ node: t }, { jsGroupNameMap: e }) {
|
|
7760
7766
|
let { ref: n } = t;
|
|
@@ -7770,25 +7776,25 @@ var _c = {
|
|
|
7770
7776
|
n(G(a, e), { traverse: !0 });
|
|
7771
7777
|
}
|
|
7772
7778
|
},
|
|
7773
|
-
CharacterSet({ node: t, parent: e, replaceWith: n }, { accuracy: a, minTargetEs2024: r, digitIsAscii: s, spaceIsAscii: o, wordIsAscii:
|
|
7774
|
-
const { kind:
|
|
7775
|
-
if (s && (
|
|
7776
|
-
n(
|
|
7779
|
+
CharacterSet({ node: t, parent: e, replaceWith: n }, { accuracy: a, minTargetEs2024: r, digitIsAscii: s, spaceIsAscii: o, wordIsAscii: i }) {
|
|
7780
|
+
const { kind: l, negate: c, value: u } = t;
|
|
7781
|
+
if (s && (l === "digit" || u === "digit")) {
|
|
7782
|
+
n($e(hn("digit", { negate: c }), e));
|
|
7777
7783
|
return;
|
|
7778
7784
|
}
|
|
7779
|
-
if (o && (
|
|
7785
|
+
if (o && (l === "space" || u === "space")) {
|
|
7780
7786
|
n(G(en(de(pc), c), e));
|
|
7781
7787
|
return;
|
|
7782
7788
|
}
|
|
7783
|
-
if (
|
|
7784
|
-
n(
|
|
7789
|
+
if (i && (l === "word" || u === "word")) {
|
|
7790
|
+
n($e(hn("word", { negate: c }), e));
|
|
7785
7791
|
return;
|
|
7786
7792
|
}
|
|
7787
|
-
if (
|
|
7788
|
-
n(
|
|
7789
|
-
else if (
|
|
7790
|
-
n(
|
|
7791
|
-
else if (
|
|
7793
|
+
if (l === "any")
|
|
7794
|
+
n($e(Ge("Any"), e));
|
|
7795
|
+
else if (l === "digit")
|
|
7796
|
+
n($e(Ge("Nd", { negate: c }), e));
|
|
7797
|
+
else if (l !== "dot") if (l === "text_segment") {
|
|
7792
7798
|
if (a === "strict")
|
|
7793
7799
|
throw new Error(C`Use of "\X" requires non-strict accuracy`);
|
|
7794
7800
|
const p = "\\p{Emoji}(?:\\p{EMod}|\\uFE0F\\u20E3?|[\\x{E0020}-\\x{E007E}]+\\x{E007F})?", d = C`\p{RI}{2}|${p}(?:\u200D${p})*`;
|
|
@@ -7798,14 +7804,14 @@ var _c = {
|
|
|
7798
7804
|
// Allow JS property `RGI_Emoji` through
|
|
7799
7805
|
{ skipPropertyNameValidation: !0 }
|
|
7800
7806
|
), e));
|
|
7801
|
-
} else if (
|
|
7802
|
-
n(
|
|
7803
|
-
else if (
|
|
7807
|
+
} else if (l === "hex")
|
|
7808
|
+
n($e(Ge("AHex", { negate: c }), e));
|
|
7809
|
+
else if (l === "newline")
|
|
7804
7810
|
n(G(de(c ? `[^
|
|
7805
7811
|
]` : `(?>\r
|
|
7806
7812
|
?|[
|
|
7807
7813
|
\v\f
\u2028\u2029])`), e));
|
|
7808
|
-
else if (
|
|
7814
|
+
else if (l === "posix")
|
|
7809
7815
|
if (!r && (u === "graph" || u === "print")) {
|
|
7810
7816
|
if (a === "strict")
|
|
7811
7817
|
throw new Error(`POSIX class "${u}" requires min target ES2024 or non-strict accuracy`);
|
|
@@ -7816,25 +7822,25 @@ var _c = {
|
|
|
7816
7822
|
c && (p = `\0-${U(p.codePointAt(0) - 1)}${U(p.codePointAt(2) + 1)}-`), n(G(de(`[${p}]`), e));
|
|
7817
7823
|
} else
|
|
7818
7824
|
n(G(en(de(gc.get(u)), c), e));
|
|
7819
|
-
else if (
|
|
7825
|
+
else if (l === "property")
|
|
7820
7826
|
Nn.has(Tt(u)) || (t.key = "sc");
|
|
7821
|
-
else if (
|
|
7822
|
-
n(
|
|
7823
|
-
else if (
|
|
7827
|
+
else if (l === "space")
|
|
7828
|
+
n($e(Ge("space", { negate: c }), e));
|
|
7829
|
+
else if (l === "word")
|
|
7824
7830
|
n(G(en(de(pe), c), e));
|
|
7825
7831
|
else
|
|
7826
|
-
throw new Error(`Unexpected character set kind "${
|
|
7832
|
+
throw new Error(`Unexpected character set kind "${l}"`);
|
|
7827
7833
|
},
|
|
7828
7834
|
Directive({ node: t, parent: e, root: n, remove: a, replaceWith: r, removeAllPrevSiblings: s, removeAllNextSiblings: o }) {
|
|
7829
|
-
const { kind:
|
|
7830
|
-
if (
|
|
7831
|
-
if (!
|
|
7835
|
+
const { kind: i, flags: l } = t;
|
|
7836
|
+
if (i === "flags")
|
|
7837
|
+
if (!l.enable && !l.disable)
|
|
7832
7838
|
a();
|
|
7833
7839
|
else {
|
|
7834
|
-
const c = oe({ flags:
|
|
7840
|
+
const c = oe({ flags: l });
|
|
7835
7841
|
c.body[0].body = o(), r(G(c, e), { traverse: !0 });
|
|
7836
7842
|
}
|
|
7837
|
-
else if (
|
|
7843
|
+
else if (i === "keep") {
|
|
7838
7844
|
const c = n.body[0], p = n.body.length === 1 && // Not emulatable if within a `CapturingGroup`
|
|
7839
7845
|
pr(c, { type: "Group" }) && c.body[0].body.length === 1 ? c.body[0] : n;
|
|
7840
7846
|
if (e.parent !== p || p.body.length > 1)
|
|
@@ -7842,7 +7848,7 @@ var _c = {
|
|
|
7842
7848
|
const d = Se({ behind: !0 });
|
|
7843
7849
|
d.body[0].body = s(), r(G(d, e));
|
|
7844
7850
|
} else
|
|
7845
|
-
throw new Error(`Unexpected directive kind "${
|
|
7851
|
+
throw new Error(`Unexpected directive kind "${i}"`);
|
|
7846
7852
|
},
|
|
7847
7853
|
Flags({ node: t, parent: e }) {
|
|
7848
7854
|
if (t.posixIsAscii)
|
|
@@ -7952,16 +7958,16 @@ var _c = {
|
|
|
7952
7958
|
groupOriginByCopy: r,
|
|
7953
7959
|
groupsByName: s,
|
|
7954
7960
|
multiplexCapturesToLeftByRef: o,
|
|
7955
|
-
openRefs:
|
|
7956
|
-
reffedNodesByReferencer:
|
|
7961
|
+
openRefs: i,
|
|
7962
|
+
reffedNodesByReferencer: l
|
|
7957
7963
|
}) {
|
|
7958
7964
|
const c = r.get(t);
|
|
7959
|
-
if (c &&
|
|
7960
|
-
const p =
|
|
7961
|
-
|
|
7965
|
+
if (c && i.has(t.number)) {
|
|
7966
|
+
const p = $e(ya(t.number), e);
|
|
7967
|
+
l.set(p, i.get(t.number)), n(p);
|
|
7962
7968
|
return;
|
|
7963
7969
|
}
|
|
7964
|
-
|
|
7970
|
+
i.set(t.number, t), o.set(t.number, []), t.name && at(o, t.name, []);
|
|
7965
7971
|
const u = o.get(t.name ?? t.number);
|
|
7966
7972
|
for (let p = 0; p < u.length; p++) {
|
|
7967
7973
|
const d = u[p];
|
|
@@ -8011,21 +8017,21 @@ var _c = {
|
|
|
8011
8017
|
a.reffedNodesByReferencer.set(t, u);
|
|
8012
8018
|
return;
|
|
8013
8019
|
}
|
|
8014
|
-
const o = a.subroutineRefMap.get(s),
|
|
8020
|
+
const o = a.subroutineRefMap.get(s), i = s === 0, l = i ? ya(0) : (
|
|
8015
8021
|
// The reffed group might itself contain subroutines, which are expanded during sub-traversal
|
|
8016
8022
|
Cr(o, a.groupOriginByCopy, null)
|
|
8017
8023
|
);
|
|
8018
|
-
let c =
|
|
8019
|
-
if (!
|
|
8024
|
+
let c = l;
|
|
8025
|
+
if (!i) {
|
|
8020
8026
|
const u = xr(Cc(
|
|
8021
8027
|
o,
|
|
8022
8028
|
(d) => d.type === "Group" && !!d.flags
|
|
8023
8029
|
)), p = u ? It(a.globalFlags, u) : a.globalFlags;
|
|
8024
8030
|
kc(p, a.currentFlags) || (c = oe({
|
|
8025
8031
|
flags: xc(p)
|
|
8026
|
-
}), c.body[0].body.push(
|
|
8032
|
+
}), c.body[0].body.push(l));
|
|
8027
8033
|
}
|
|
8028
|
-
n(G(c, e), { traverse: !
|
|
8034
|
+
n(G(c, e), { traverse: !i });
|
|
8029
8035
|
}
|
|
8030
8036
|
}, wc = {
|
|
8031
8037
|
Backreference({ node: t, parent: e, replaceWith: n }, a) {
|
|
@@ -8039,8 +8045,8 @@ var _c = {
|
|
|
8039
8045
|
else if (s.length > 1) {
|
|
8040
8046
|
const o = oe({
|
|
8041
8047
|
atomic: !0,
|
|
8042
|
-
body: s.reverse().map((
|
|
8043
|
-
body: [fn(
|
|
8048
|
+
body: s.reverse().map((i) => Be({
|
|
8049
|
+
body: [fn(i.number)]
|
|
8044
8050
|
}))
|
|
8045
8051
|
});
|
|
8046
8052
|
n(G(o, e));
|
|
@@ -8196,7 +8202,7 @@ function de(t, e) {
|
|
|
8196
8202
|
function en(t, e) {
|
|
8197
8203
|
return t.negate = e, t;
|
|
8198
8204
|
}
|
|
8199
|
-
function
|
|
8205
|
+
function $e(t, e) {
|
|
8200
8206
|
return t.parent = e, t;
|
|
8201
8207
|
}
|
|
8202
8208
|
function G(t, e) {
|
|
@@ -8206,7 +8212,7 @@ function Ic(t, e) {
|
|
|
8206
8212
|
const n = $r(e), a = bn(n.target, "ES2024"), r = bn(n.target, "ES2025"), s = n.rules.recursionLimit;
|
|
8207
8213
|
if (!Number.isInteger(s) || s < 2 || s > 20)
|
|
8208
8214
|
throw new Error("Invalid recursionLimit; use 2-20");
|
|
8209
|
-
let o = null,
|
|
8215
|
+
let o = null, i = null;
|
|
8210
8216
|
if (!r) {
|
|
8211
8217
|
const f = [t.flags.ignoreCase];
|
|
8212
8218
|
Je(t, Rc, {
|
|
@@ -8218,22 +8224,22 @@ function Ic(t, e) {
|
|
|
8218
8224
|
f.push(m);
|
|
8219
8225
|
},
|
|
8220
8226
|
setHasCasedChar() {
|
|
8221
|
-
f.at(-1) ? o = !0 :
|
|
8227
|
+
f.at(-1) ? o = !0 : i = !0;
|
|
8222
8228
|
}
|
|
8223
8229
|
});
|
|
8224
8230
|
}
|
|
8225
|
-
const
|
|
8231
|
+
const l = {
|
|
8226
8232
|
dotAll: t.flags.dotAll,
|
|
8227
8233
|
// - Turn global flag i on if a case insensitive node was used and no case sensitive nodes were
|
|
8228
8234
|
// used (to avoid unnecessary node expansion).
|
|
8229
8235
|
// - Turn global flag i off if a case sensitive node was used (since case sensitivity can't be
|
|
8230
8236
|
// forced without the use of ES2025 flag groups)
|
|
8231
|
-
ignoreCase: !!((t.flags.ignoreCase || o) && !
|
|
8237
|
+
ignoreCase: !!((t.flags.ignoreCase || o) && !i)
|
|
8232
8238
|
};
|
|
8233
8239
|
let c = t;
|
|
8234
8240
|
const u = {
|
|
8235
8241
|
accuracy: n.accuracy,
|
|
8236
|
-
appliedGlobalFlags:
|
|
8242
|
+
appliedGlobalFlags: l,
|
|
8237
8243
|
captureMap: /* @__PURE__ */ new Map(),
|
|
8238
8244
|
currentFlags: {
|
|
8239
8245
|
dotAll: t.flags.dotAll,
|
|
@@ -8243,7 +8249,7 @@ function Ic(t, e) {
|
|
|
8243
8249
|
lastNode: c,
|
|
8244
8250
|
originMap: t._originMap,
|
|
8245
8251
|
recursionLimit: s,
|
|
8246
|
-
useAppliedIgnoreCase: !!(!r && o &&
|
|
8252
|
+
useAppliedIgnoreCase: !!(!r && o && i),
|
|
8247
8253
|
useFlagMods: r,
|
|
8248
8254
|
useFlagV: a,
|
|
8249
8255
|
verbose: n.verbose
|
|
@@ -8320,8 +8326,8 @@ var Rc = {
|
|
|
8320
8326
|
@param {CapturingGroupNode} node
|
|
8321
8327
|
*/
|
|
8322
8328
|
CapturingGroup(t, e, n) {
|
|
8323
|
-
const { body: a, name: r, number: s } = t, o = { ignoreCase: e.currentFlags.ignoreCase },
|
|
8324
|
-
return
|
|
8329
|
+
const { body: a, name: r, number: s } = t, o = { ignoreCase: e.currentFlags.ignoreCase }, i = e.originMap.get(t);
|
|
8330
|
+
return i && (o.hidden = !0, s > i.number && (o.transferTo = i.number)), e.captureMap.set(s, o), `(${r ? `?<${r}>` : ""}${a.map(n).join("|")})`;
|
|
8325
8331
|
},
|
|
8326
8332
|
/**
|
|
8327
8333
|
@param {CharacterNode} node
|
|
@@ -8348,12 +8354,12 @@ var Rc = {
|
|
|
8348
8354
|
let { body: o } = t;
|
|
8349
8355
|
if (a === "intersection" && !e.useFlagV)
|
|
8350
8356
|
throw new Error("Use of class intersection requires min target ES2024");
|
|
8351
|
-
|
|
8352
|
-
const
|
|
8357
|
+
be.bugFlagVLiteralHyphenIsRange && e.useFlagV && o.some(wa) && (o = [Bt(45), ...o.filter((c) => !wa(c))]);
|
|
8358
|
+
const i = () => `[${r ? "^" : ""}${o.map(n).join(a === "intersection" ? "&&" : "")}]`;
|
|
8353
8359
|
if (!e.inCharClass) {
|
|
8354
8360
|
if (
|
|
8355
8361
|
// Already established `kind !== 'intersection'` if `!state.useFlagV`; don't check again
|
|
8356
|
-
(!e.useFlagV ||
|
|
8362
|
+
(!e.useFlagV || be.bugNestedClassIgnoresNegation) && !r
|
|
8357
8363
|
) {
|
|
8358
8364
|
const u = o.filter(
|
|
8359
8365
|
(p) => p.type === "CharacterClass" && p.kind === "union" && p.negate
|
|
@@ -8367,20 +8373,20 @@ var Rc = {
|
|
|
8367
8373
|
}
|
|
8368
8374
|
}
|
|
8369
8375
|
e.inCharClass = !0;
|
|
8370
|
-
const c =
|
|
8376
|
+
const c = i();
|
|
8371
8377
|
return e.inCharClass = !1, c;
|
|
8372
8378
|
}
|
|
8373
|
-
const
|
|
8379
|
+
const l = o[0];
|
|
8374
8380
|
if (
|
|
8375
8381
|
// Already established that the parent is a char class via `inCharClass`; don't check again
|
|
8376
|
-
a === "union" && !r &&
|
|
8377
|
-
((!e.useFlagV || !e.verbose) && s.kind === "union" && !(
|
|
8378
|
-
o.length === 1 &&
|
|
8382
|
+
a === "union" && !r && l && // Allows many nested classes to work with `target` ES2018 which doesn't support nesting
|
|
8383
|
+
((!e.useFlagV || !e.verbose) && s.kind === "union" && !(be.bugFlagVLiteralHyphenIsRange && e.useFlagV) || !e.verbose && s.kind === "intersection" && // JS doesn't allow intersection with union or ranges
|
|
8384
|
+
o.length === 1 && l.type !== "CharacterClassRange")
|
|
8379
8385
|
)
|
|
8380
8386
|
return o.map(n).join("");
|
|
8381
8387
|
if (!e.useFlagV && s.type === "CharacterClass")
|
|
8382
8388
|
throw new Error("Use of nested character class requires min target ES2024");
|
|
8383
|
-
return
|
|
8389
|
+
return i();
|
|
8384
8390
|
},
|
|
8385
8391
|
/**
|
|
8386
8392
|
@param {CharacterClassRangeNode} node
|
|
@@ -8390,16 +8396,16 @@ var Rc = {
|
|
|
8390
8396
|
escDigit: !1,
|
|
8391
8397
|
inCharClass: !0,
|
|
8392
8398
|
useFlagV: e.useFlagV
|
|
8393
|
-
}, s = Me(n, r), o = Me(a, r),
|
|
8399
|
+
}, s = Me(n, r), o = Me(a, r), i = /* @__PURE__ */ new Set();
|
|
8394
8400
|
if (e.useAppliedIgnoreCase && e.currentFlags.ignoreCase) {
|
|
8395
|
-
const
|
|
8396
|
-
jc(
|
|
8397
|
-
|
|
8401
|
+
const l = Ir(t);
|
|
8402
|
+
jc(l).forEach((u) => {
|
|
8403
|
+
i.add(
|
|
8398
8404
|
Array.isArray(u) ? `${Me(u[0], r)}-${Me(u[1], r)}` : Me(u, r)
|
|
8399
8405
|
);
|
|
8400
8406
|
});
|
|
8401
8407
|
}
|
|
8402
|
-
return `${s}-${o}${[...
|
|
8408
|
+
return `${s}-${o}${[...i].join("")}`;
|
|
8403
8409
|
},
|
|
8404
8410
|
/**
|
|
8405
8411
|
@param {CharacterSetNode} node
|
|
@@ -8440,9 +8446,9 @@ var Rc = {
|
|
|
8440
8446
|
Group({ atomic: t, body: e, flags: n, parent: a }, r, s) {
|
|
8441
8447
|
const o = r.currentFlags;
|
|
8442
8448
|
n && (r.currentFlags = It(o, n));
|
|
8443
|
-
const
|
|
8444
|
-
a.type !== "Quantifier" && !t && (!r.useFlagMods || !n) ?
|
|
8445
|
-
return r.currentFlags = o,
|
|
8449
|
+
const i = e.map(s).join("|"), l = !r.verbose && e.length === 1 && // Single alt
|
|
8450
|
+
a.type !== "Quantifier" && !t && (!r.useFlagMods || !n) ? i : `(?${Mc(t, n, r.useFlagMods)}${i})`;
|
|
8451
|
+
return r.currentFlags = o, l;
|
|
8446
8452
|
},
|
|
8447
8453
|
/**
|
|
8448
8454
|
@param {LookaroundAssertionNode} node
|
|
@@ -8545,14 +8551,14 @@ function Ir(t, e) {
|
|
|
8545
8551
|
if (a < 65 && (r === 65535 || r >= 131071) || a === 65536 && r >= 131071)
|
|
8546
8552
|
return s;
|
|
8547
8553
|
for (let o = a; o <= r; o++) {
|
|
8548
|
-
const
|
|
8549
|
-
if (!Pn(
|
|
8554
|
+
const i = U(o);
|
|
8555
|
+
if (!Pn(i))
|
|
8550
8556
|
continue;
|
|
8551
|
-
const
|
|
8557
|
+
const l = wr(i).filter((c) => {
|
|
8552
8558
|
const u = c.codePointAt(0);
|
|
8553
8559
|
return u < a || u > r;
|
|
8554
8560
|
});
|
|
8555
|
-
if (
|
|
8561
|
+
if (l.length && (s.push(...l), n))
|
|
8556
8562
|
break;
|
|
8557
8563
|
}
|
|
8558
8564
|
return s;
|
|
@@ -8604,7 +8610,7 @@ function Gc(t) {
|
|
|
8604
8610
|
function wa({ type: t, value: e }) {
|
|
8605
8611
|
return t === "Character" && e === 45;
|
|
8606
8612
|
}
|
|
8607
|
-
var we,
|
|
8613
|
+
var we, fe, Ne, ke, Pe, rt, yn, ve, Fc = (ve = class extends RegExp {
|
|
8608
8614
|
/**
|
|
8609
8615
|
@overload
|
|
8610
8616
|
@param {string} pattern
|
|
@@ -8626,7 +8632,7 @@ var we, me, Ne, ke, Pe, rt, yn, ve, Fc = (ve = class extends RegExp {
|
|
|
8626
8632
|
Ce(this, we, /* @__PURE__ */ new Map()), /**
|
|
8627
8633
|
@type {RegExp | EmulatedRegExp | null}
|
|
8628
8634
|
*/
|
|
8629
|
-
Ce(this,
|
|
8635
|
+
Ce(this, fe, null), /**
|
|
8630
8636
|
@type {string}
|
|
8631
8637
|
*/
|
|
8632
8638
|
Ce(this, Ne), /**
|
|
@@ -8645,7 +8651,7 @@ var we, me, Ne, ke, Pe, rt, yn, ve, Fc = (ve = class extends RegExp {
|
|
|
8645
8651
|
if (r)
|
|
8646
8652
|
throw new Error("Cannot provide options when copying a regexp");
|
|
8647
8653
|
const o = n;
|
|
8648
|
-
e(o, a),
|
|
8654
|
+
e(o, a), se(this, Ne, o.source), o instanceof ve && (se(this, we, K(o, we)), se(this, ke, K(o, ke)), se(this, Pe, K(o, Pe)), this.rawOptions = o.rawOptions);
|
|
8649
8655
|
} else {
|
|
8650
8656
|
const o = {
|
|
8651
8657
|
hiddenCaptures: [],
|
|
@@ -8653,9 +8659,9 @@ var we, me, Ne, ke, Pe, rt, yn, ve, Fc = (ve = class extends RegExp {
|
|
|
8653
8659
|
transfers: [],
|
|
8654
8660
|
...r
|
|
8655
8661
|
};
|
|
8656
|
-
e(s ? "" : n, a),
|
|
8662
|
+
e(s ? "" : n, a), se(this, Ne, n), se(this, we, Uc(o.hiddenCaptures, o.transfers)), se(this, Pe, o.strategy), this.rawOptions = r ?? {};
|
|
8657
8663
|
}
|
|
8658
|
-
s ||
|
|
8664
|
+
s || se(this, fe, this);
|
|
8659
8665
|
}
|
|
8660
8666
|
// Override the getter with one that works with lazy-compiled regexes
|
|
8661
8667
|
get source() {
|
|
@@ -8668,9 +8674,9 @@ var we, me, Ne, ke, Pe, rt, yn, ve, Fc = (ve = class extends RegExp {
|
|
|
8668
8674
|
@returns {RegExpExecArray?}
|
|
8669
8675
|
*/
|
|
8670
8676
|
exec(n) {
|
|
8671
|
-
if (!K(this,
|
|
8677
|
+
if (!K(this, fe)) {
|
|
8672
8678
|
const { lazyCompile: s, ...o } = this.rawOptions;
|
|
8673
|
-
|
|
8679
|
+
se(this, fe, new ve(K(this, Ne), this.flags, o));
|
|
8674
8680
|
}
|
|
8675
8681
|
const a = this.global || this.sticky, r = this.lastIndex;
|
|
8676
8682
|
if (K(this, Pe) === "clip_search" && a && r) {
|
|
@@ -8680,31 +8686,31 @@ var we, me, Ne, ke, Pe, rt, yn, ve, Fc = (ve = class extends RegExp {
|
|
|
8680
8686
|
}
|
|
8681
8687
|
return Ot(this, rt, yn).call(this, n);
|
|
8682
8688
|
}
|
|
8683
|
-
}, we = new WeakMap(),
|
|
8689
|
+
}, we = new WeakMap(), fe = new WeakMap(), Ne = new WeakMap(), ke = new WeakMap(), Pe = new WeakMap(), rt = new WeakSet(), /**
|
|
8684
8690
|
Adds support for hidden and transfer captures.
|
|
8685
8691
|
@param {string} str
|
|
8686
8692
|
@returns
|
|
8687
8693
|
*/
|
|
8688
8694
|
yn = function(n) {
|
|
8689
|
-
K(this,
|
|
8690
|
-
const a = Ln(ve.prototype, this, "exec").call(K(this,
|
|
8691
|
-
if (this.lastIndex = K(this,
|
|
8695
|
+
K(this, fe).lastIndex = this.lastIndex;
|
|
8696
|
+
const a = Ln(ve.prototype, this, "exec").call(K(this, fe), n);
|
|
8697
|
+
if (this.lastIndex = K(this, fe).lastIndex, !a || !K(this, we).size)
|
|
8692
8698
|
return a;
|
|
8693
8699
|
const r = [...a];
|
|
8694
8700
|
a.length = 1;
|
|
8695
8701
|
let s;
|
|
8696
8702
|
this.hasIndices && (s = [...a.indices], a.indices.length = 1);
|
|
8697
8703
|
const o = [0];
|
|
8698
|
-
for (let
|
|
8699
|
-
const { hidden:
|
|
8700
|
-
if (
|
|
8704
|
+
for (let i = 1; i < r.length; i++) {
|
|
8705
|
+
const { hidden: l, transferTo: c } = K(this, we).get(i) ?? {};
|
|
8706
|
+
if (l ? o.push(null) : (o.push(a.length), a.push(r[i]), this.hasIndices && a.indices.push(s[i])), c && r[i] !== void 0) {
|
|
8701
8707
|
const u = o[c];
|
|
8702
8708
|
if (!u)
|
|
8703
8709
|
throw new Error(`Invalid capture transfer to "${u}"`);
|
|
8704
|
-
if (a[u] = r[
|
|
8705
|
-
K(this, ke) ||
|
|
8710
|
+
if (a[u] = r[i], this.hasIndices && (a.indices[u] = s[i]), a.groups) {
|
|
8711
|
+
K(this, ke) || se(this, ke, zc(this.source));
|
|
8706
8712
|
const p = K(this, ke).get(c);
|
|
8707
|
-
p && (a.groups[p] = r[
|
|
8713
|
+
p && (a.groups[p] = r[i], this.hasIndices && (a.indices.groups[p] = s[i]));
|
|
8708
8714
|
}
|
|
8709
8715
|
}
|
|
8710
8716
|
}
|
|
@@ -8714,13 +8720,13 @@ function Dc(t, e, n, a) {
|
|
|
8714
8720
|
if (t.index += e, t.input = n, a) {
|
|
8715
8721
|
const r = t.indices;
|
|
8716
8722
|
for (let o = 0; o < r.length; o++) {
|
|
8717
|
-
const
|
|
8718
|
-
|
|
8723
|
+
const i = r[o];
|
|
8724
|
+
i && (r[o] = [i[0] + e, i[1] + e]);
|
|
8719
8725
|
}
|
|
8720
8726
|
const s = r.groups;
|
|
8721
8727
|
s && Object.keys(s).forEach((o) => {
|
|
8722
|
-
const
|
|
8723
|
-
|
|
8728
|
+
const i = s[o];
|
|
8729
|
+
i && (s[o] = [i[0] + e, i[1] + e]);
|
|
8724
8730
|
});
|
|
8725
8731
|
}
|
|
8726
8732
|
}
|
|
@@ -8739,16 +8745,16 @@ function zc(t) {
|
|
|
8739
8745
|
const e = /(?<capture>\((?:\?<(?![=!])(?<name>[^>]+)>|(?!\?)))|\\?./gsu, n = /* @__PURE__ */ new Map();
|
|
8740
8746
|
let a = 0, r = 0, s;
|
|
8741
8747
|
for (; s = e.exec(t); ) {
|
|
8742
|
-
const { 0: o, groups: { capture:
|
|
8743
|
-
o === "[" ? a++ : a ? o === "]" && a-- :
|
|
8748
|
+
const { 0: o, groups: { capture: i, name: l } } = s;
|
|
8749
|
+
o === "[" ? a++ : a ? o === "]" && a-- : i && (r++, l && n.set(r, l));
|
|
8744
8750
|
}
|
|
8745
8751
|
return n;
|
|
8746
8752
|
}
|
|
8747
8753
|
function qc(t, e) {
|
|
8748
|
-
const n =
|
|
8754
|
+
const n = Hc(t, e);
|
|
8749
8755
|
return n.options ? new Fc(n.pattern, n.flags, n.options) : new RegExp(n.pattern, n.flags);
|
|
8750
8756
|
}
|
|
8751
|
-
function
|
|
8757
|
+
function Hc(t, e) {
|
|
8752
8758
|
const n = $r(e), a = dr(t, {
|
|
8753
8759
|
flags: n.flags,
|
|
8754
8760
|
normalizeUnknownPropertyNames: !0,
|
|
@@ -8767,18 +8773,18 @@ function Wc(t, e) {
|
|
|
8767
8773
|
captureTransfers: s._captureTransfers,
|
|
8768
8774
|
hiddenCaptures: s._hiddenCaptures,
|
|
8769
8775
|
mode: "external"
|
|
8770
|
-
}),
|
|
8776
|
+
}), i = sc(o.pattern), l = rc(i.pattern, {
|
|
8771
8777
|
captureTransfers: o.captureTransfers,
|
|
8772
8778
|
hiddenCaptures: o.hiddenCaptures
|
|
8773
8779
|
}), c = {
|
|
8774
|
-
pattern:
|
|
8780
|
+
pattern: l.pattern,
|
|
8775
8781
|
flags: `${n.hasIndices ? "d" : ""}${n.global ? "g" : ""}${s.flags}${s.options.disable.v ? "u" : "v"}`
|
|
8776
8782
|
};
|
|
8777
8783
|
if (n.avoidSubclass) {
|
|
8778
8784
|
if (n.lazyCompileLength !== 1 / 0)
|
|
8779
8785
|
throw new Error("Lazy compilation requires subclass");
|
|
8780
8786
|
} else {
|
|
8781
|
-
const u =
|
|
8787
|
+
const u = l.hiddenCaptures.sort((m, _) => m - _), p = Array.from(l.captureTransfers), d = r._strategy, f = c.pattern.length >= n.lazyCompileLength;
|
|
8782
8788
|
(u.length || p.length || d || f) && (c.options = {
|
|
8783
8789
|
...u.length && { hiddenCaptures: u },
|
|
8784
8790
|
...p.length && { transfers: p },
|
|
@@ -8789,7 +8795,7 @@ function Wc(t, e) {
|
|
|
8789
8795
|
return c;
|
|
8790
8796
|
}
|
|
8791
8797
|
const ka = 4294967295;
|
|
8792
|
-
class
|
|
8798
|
+
class Wc {
|
|
8793
8799
|
constructor(e, n = {}) {
|
|
8794
8800
|
h(this, "regexps");
|
|
8795
8801
|
this.patterns = e, this.options = n;
|
|
@@ -8803,30 +8809,30 @@ class Hc {
|
|
|
8803
8809
|
this.regexps = e.map((o) => {
|
|
8804
8810
|
if (typeof o != "string")
|
|
8805
8811
|
return o;
|
|
8806
|
-
const
|
|
8807
|
-
if (
|
|
8808
|
-
if (
|
|
8809
|
-
return
|
|
8812
|
+
const i = r == null ? void 0 : r.get(o);
|
|
8813
|
+
if (i) {
|
|
8814
|
+
if (i instanceof RegExp)
|
|
8815
|
+
return i;
|
|
8810
8816
|
if (a)
|
|
8811
8817
|
return null;
|
|
8812
|
-
throw
|
|
8818
|
+
throw i;
|
|
8813
8819
|
}
|
|
8814
8820
|
try {
|
|
8815
|
-
const
|
|
8816
|
-
return r == null || r.set(o,
|
|
8817
|
-
} catch (
|
|
8818
|
-
if (r == null || r.set(o,
|
|
8821
|
+
const l = s(o);
|
|
8822
|
+
return r == null || r.set(o, l), l;
|
|
8823
|
+
} catch (l) {
|
|
8824
|
+
if (r == null || r.set(o, l), a)
|
|
8819
8825
|
return null;
|
|
8820
|
-
throw
|
|
8826
|
+
throw l;
|
|
8821
8827
|
}
|
|
8822
8828
|
});
|
|
8823
8829
|
}
|
|
8824
8830
|
findNextMatchSync(e, n, a) {
|
|
8825
8831
|
const r = typeof e == "string" ? e : e.content, s = [];
|
|
8826
|
-
function o(
|
|
8832
|
+
function o(i, l, c = 0) {
|
|
8827
8833
|
return {
|
|
8828
|
-
index:
|
|
8829
|
-
captureIndices:
|
|
8834
|
+
index: i,
|
|
8835
|
+
captureIndices: l.indices.map((u) => u == null ? {
|
|
8830
8836
|
start: ka,
|
|
8831
8837
|
end: ka,
|
|
8832
8838
|
length: 0
|
|
@@ -8837,17 +8843,17 @@ class Hc {
|
|
|
8837
8843
|
})
|
|
8838
8844
|
};
|
|
8839
8845
|
}
|
|
8840
|
-
for (let
|
|
8841
|
-
const
|
|
8842
|
-
if (
|
|
8846
|
+
for (let i = 0; i < this.regexps.length; i++) {
|
|
8847
|
+
const l = this.regexps[i];
|
|
8848
|
+
if (l)
|
|
8843
8849
|
try {
|
|
8844
|
-
|
|
8845
|
-
const c =
|
|
8850
|
+
l.lastIndex = n;
|
|
8851
|
+
const c = l.exec(r);
|
|
8846
8852
|
if (!c)
|
|
8847
8853
|
continue;
|
|
8848
8854
|
if (c.index === n)
|
|
8849
|
-
return o(
|
|
8850
|
-
s.push([
|
|
8855
|
+
return o(i, c, 0);
|
|
8856
|
+
s.push([i, c, 0]);
|
|
8851
8857
|
} catch (c) {
|
|
8852
8858
|
if (this.options.forgiving)
|
|
8853
8859
|
continue;
|
|
@@ -8855,10 +8861,10 @@ class Hc {
|
|
|
8855
8861
|
}
|
|
8856
8862
|
}
|
|
8857
8863
|
if (s.length) {
|
|
8858
|
-
const
|
|
8859
|
-
for (const [
|
|
8860
|
-
if (c.index ===
|
|
8861
|
-
return o(
|
|
8864
|
+
const i = Math.min(...s.map((l) => l[1].index));
|
|
8865
|
+
for (const [l, c, u] of s)
|
|
8866
|
+
if (c.index === i)
|
|
8867
|
+
return o(l, c, u);
|
|
8862
8868
|
}
|
|
8863
8869
|
return null;
|
|
8864
8870
|
}
|
|
@@ -8900,7 +8906,7 @@ function Xc(t = {}) {
|
|
|
8900
8906
|
);
|
|
8901
8907
|
return e.regexConstructor || (e.regexConstructor = (n) => Vc(n, { target: e.target })), {
|
|
8902
8908
|
createScanner(n) {
|
|
8903
|
-
return new
|
|
8909
|
+
return new Wc(n, e);
|
|
8904
8910
|
},
|
|
8905
8911
|
createString(n) {
|
|
8906
8912
|
return {
|
|
@@ -8948,14 +8954,14 @@ const Zc = { class: "relative float-left min-w-full" }, Kc = ["innerHTML"], Jc =
|
|
|
8948
8954
|
}
|
|
8949
8955
|
})();
|
|
8950
8956
|
const s = L(), o = L();
|
|
8951
|
-
function
|
|
8957
|
+
function i() {
|
|
8952
8958
|
if (!o.value || !s.value) return;
|
|
8953
8959
|
const c = o.value.children[0];
|
|
8954
8960
|
c && (c.scrollLeft = s.value.scrollLeft);
|
|
8955
8961
|
}
|
|
8956
|
-
function
|
|
8962
|
+
function l() {
|
|
8957
8963
|
Fr().then(() => {
|
|
8958
|
-
|
|
8964
|
+
i();
|
|
8959
8965
|
});
|
|
8960
8966
|
}
|
|
8961
8967
|
return (c, u) => (M(), J("div", {
|
|
@@ -8978,8 +8984,8 @@ const Zc = { class: "relative float-left min-w-full" }, Kc = ["innerHTML"], Jc =
|
|
|
8978
8984
|
autocorrect: "off",
|
|
8979
8985
|
autocapitalize: "off",
|
|
8980
8986
|
spellcheck: "false",
|
|
8981
|
-
onInput:
|
|
8982
|
-
onScroll:
|
|
8987
|
+
onInput: l,
|
|
8988
|
+
onScroll: i
|
|
8983
8989
|
}, null, 544), [
|
|
8984
8990
|
[Gr, e.value]
|
|
8985
8991
|
])
|
|
@@ -9001,7 +9007,7 @@ const Zc = { class: "relative float-left min-w-full" }, Kc = ["innerHTML"], Jc =
|
|
|
9001
9007
|
}`);
|
|
9002
9008
|
}), (n, a) => (M(), J("div", Qc, [
|
|
9003
9009
|
N("div", Yc, [
|
|
9004
|
-
|
|
9010
|
+
E(Ur(Jc), {
|
|
9005
9011
|
modelValue: e.value,
|
|
9006
9012
|
"onUpdate:modelValue": a[0] || (a[0] = (r) => e.value = r)
|
|
9007
9013
|
}, null, 8, ["modelValue"])
|
|
@@ -9014,8 +9020,8 @@ function lu(t, e) {
|
|
|
9014
9020
|
return e;
|
|
9015
9021
|
try {
|
|
9016
9022
|
let n = t;
|
|
9017
|
-
const a = "function transformData(data) {", r = "}";
|
|
9018
|
-
return
|
|
9023
|
+
const a = "function transformData(data) {", r = "}", s = n.trim(), o = s.indexOf(a), i = s.lastIndexOf(r);
|
|
9024
|
+
return o !== -1 && i !== -1 && i > o + a.length && (n = s.substring(o + a.length, i).trim()), new Function("data", n)(e);
|
|
9019
9025
|
} catch (n) {
|
|
9020
9026
|
return console.error("执行数据转换函数失败:", n), e;
|
|
9021
9027
|
}
|
|
@@ -9025,8 +9031,8 @@ function cu(t) {
|
|
|
9025
9031
|
return !1;
|
|
9026
9032
|
try {
|
|
9027
9033
|
let e = t;
|
|
9028
|
-
const n = "function transformData(data) {", a = "}";
|
|
9029
|
-
return
|
|
9034
|
+
const n = "function transformData(data) {", a = "}", r = e.trim(), s = r.indexOf(n), o = r.lastIndexOf(a);
|
|
9035
|
+
return s !== -1 && o !== -1 && o > s + n.length && (e = r.substring(s + n.length, o).trim()), new Function("data", e), !0;
|
|
9030
9036
|
} catch (e) {
|
|
9031
9037
|
return console.error("数据转换函数无效:", e), !1;
|
|
9032
9038
|
}
|