comarkserv 0.1.0

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.
Files changed (44) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +389 -0
  3. package/dist/THIRD_PARTY_LICENSES.md +932 -0
  4. package/dist/build-CsToYJrU.mjs +2 -0
  5. package/dist/build-Cv5aO0CB.mjs +205 -0
  6. package/dist/cli.d.mts +1 -0
  7. package/dist/cli.mjs +894 -0
  8. package/dist/cloudflared-6f_lzz4F.mjs +181 -0
  9. package/dist/dist-B-IALNns.mjs +2 -0
  10. package/dist/dist-BK-bpLWg.mjs +2 -0
  11. package/dist/dist-BQzCbTko.mjs +1693 -0
  12. package/dist/dist-BWcWG5YB.mjs +671 -0
  13. package/dist/dist-BiVw4ojz.mjs +592 -0
  14. package/dist/dist-BnmL9jeq.mjs +538 -0
  15. package/dist/dist-BtedNLrc.mjs +276 -0
  16. package/dist/dist-BvdNTrap.mjs +2710 -0
  17. package/dist/dist-ByijHttv.mjs +69 -0
  18. package/dist/dist-C2E4zSX1.mjs +347 -0
  19. package/dist/dist-CWYRQLUT.mjs +2 -0
  20. package/dist/dist-CXQ7eTfT.mjs +417 -0
  21. package/dist/dist-CfsjQ0o8.mjs +905 -0
  22. package/dist/dist-CsTXDvwi.mjs +300 -0
  23. package/dist/dist-CtONMLh4.mjs +283 -0
  24. package/dist/dist-DMftjyxU.mjs +370 -0
  25. package/dist/dist-Dr9uTCX7.mjs +2 -0
  26. package/dist/dist-Dxvc11TH.mjs +339 -0
  27. package/dist/dist-GmbcGEAc.mjs +3 -0
  28. package/dist/dist-V1rkISnf.mjs +220 -0
  29. package/dist/dist-ZoN94PJ0.mjs +76 -0
  30. package/dist/dist-fh99cWMN.mjs +524 -0
  31. package/dist/editor-CHDyOp-8.mjs +721 -0
  32. package/dist/index.d.mts +301 -0
  33. package/dist/index.mjs +6 -0
  34. package/dist/languages-C0kEygG_.mjs +119 -0
  35. package/dist/markdown-BqKed1Vq.mjs +710 -0
  36. package/dist/markdown-DWuqfzps.mjs +2 -0
  37. package/dist/rolldown-runtime-CMFfr-1z.mjs +26 -0
  38. package/dist/server-Dkjk_D1Y.mjs +2628 -0
  39. package/dist/terminal-aKr5Xlp3.mjs +169 -0
  40. package/dist/themes-mEufQ_3e.mjs +2194 -0
  41. package/dist/twinkleplop.production-Coccf2Q9.mjs +2 -0
  42. package/dist/twinkleplop.production-DekYmX6O.mjs +4697 -0
  43. package/dist/twinkleplop.tokens-CgBUTCSg.mjs +76 -0
  44. package/package.json +133 -0
@@ -0,0 +1,592 @@
1
+ import { A as Wr, D as Ur, F as Zr, G as ge$1, I as at, K as it, M as Xr, O as Vn, Q as ot, S as Qr, V as ei, Y as lt, d as Ir, et as qn, ft as zr, g as Mr, h as Lr, i as Br, it as st, l as Hn, m as Kr, mt as g, n as $n, o as Fr, pt as _, q as jn, r as $r, s as Gr, tt as qr, u as Hr, v as Nr } from "./twinkleplop.production-DekYmX6O.mjs";
2
+ import { F as c, G as i, P as be$1, d as Ie, et as n, j as a, nt as o, ot as r, s as Fe, ut as t } from "./twinkleplop.tokens-CgBUTCSg.mjs";
3
+ //#region node_modules/.pnpm/@twinkleplop+python@0.1.4/node_modules/@twinkleplop/python/dist/index.js
4
+ function T(e) {
5
+ if (e === "") return [""];
6
+ let t = T(e.slice(1)), n = e[0].toLowerCase(), r = e[0].toUpperCase();
7
+ return n === r ? t.map((e) => n + e) : [...t.map((e) => n + e), ...t.map((e) => r + e)];
8
+ }
9
+ function E(e) {
10
+ let t = [];
11
+ for (let n of e) t.push(...T(n));
12
+ return t;
13
+ }
14
+ var D = E(["b", "u"]);
15
+ var O = E([
16
+ "r",
17
+ "rb",
18
+ "br"
19
+ ]);
20
+ var k = [...D, ...O];
21
+ var A = E(["f", "t"]);
22
+ var j = E([
23
+ "rf",
24
+ "fr",
25
+ "rt",
26
+ "tr"
27
+ ]);
28
+ var M = [...A, ...j];
29
+ var N = [...M, ...k];
30
+ var se = N.filter((e) => e[0] >= "a" && e[0] <= "z");
31
+ var ce = N.filter((e) => e[0] >= "A" && e[0] <= "Z");
32
+ var le = ["\"\"\""];
33
+ var ue = ["'''"];
34
+ var de = ["\""];
35
+ var fe = ["'"];
36
+ var pe = /* @__PURE__ */ "and.as.assert.async.await.break.class.continue.def.del.elif.else.except.finally.for.from.global.if.import.in.is.lambda.nonlocal.not.or.pass.raise.return.try.while.with.yield".split(".");
37
+ var P = ["True", "False"];
38
+ var F = ["None"];
39
+ var I = [
40
+ "int",
41
+ "float",
42
+ "complex",
43
+ "bool",
44
+ "str",
45
+ "bytes",
46
+ "bytearray",
47
+ "memoryview",
48
+ "list",
49
+ "tuple",
50
+ "dict",
51
+ "set",
52
+ "frozenset",
53
+ "object",
54
+ "range",
55
+ "slice",
56
+ "type"
57
+ ];
58
+ var L = [
59
+ "**=",
60
+ "//=",
61
+ "<<=",
62
+ ">>=",
63
+ "..."
64
+ ];
65
+ var R = [
66
+ "**",
67
+ "//",
68
+ "<<",
69
+ ">>",
70
+ "<=",
71
+ ">=",
72
+ "==",
73
+ "!=",
74
+ "+=",
75
+ "-=",
76
+ "*=",
77
+ "/=",
78
+ "%=",
79
+ "&=",
80
+ "|=",
81
+ "^=",
82
+ "@=",
83
+ ":=",
84
+ "->"
85
+ ];
86
+ var z = [
87
+ "+",
88
+ "-",
89
+ "*",
90
+ "/",
91
+ "%",
92
+ "&",
93
+ "|",
94
+ "^",
95
+ "~",
96
+ "<",
97
+ ">",
98
+ "=",
99
+ "@"
100
+ ];
101
+ var B = [
102
+ ...L,
103
+ ...R,
104
+ ...z
105
+ ];
106
+ var me = [
107
+ "(",
108
+ "[",
109
+ "{"
110
+ ];
111
+ var he = [
112
+ ")",
113
+ "]",
114
+ "}"
115
+ ];
116
+ var V = Lr([[128, 65535]]);
117
+ var H = Zr([
118
+ " ",
119
+ " ",
120
+ "\n",
121
+ "\r",
122
+ "\f"
123
+ ]);
124
+ var U = $r("#", "\n", t);
125
+ var W = Xr("\\", a);
126
+ var G = [
127
+ Zr(M, Gr("fstring_prefix_probe")),
128
+ Zr(k, Gr("plain_prefix_probe")),
129
+ Xr(le, c, Gr("string_triple_dq")),
130
+ Xr(ue, c, Gr("string_triple_sq")),
131
+ Xr(de, c, Gr("string_single_dq")),
132
+ Xr(fe, c, Gr("string_single_sq"))
133
+ ];
134
+ var K = [
135
+ Xr(["0x", "0X"], i, Gr("hex_number")),
136
+ Xr(["0b", "0B"], i, Gr("bin_number")),
137
+ Xr(["0o", "0O"], i, Gr("oct_number")),
138
+ Xr(Hr, i, Gr("number"))
139
+ ];
140
+ var q = [Qr(F), Qr(pe)];
141
+ var J = Xr(Br, n, Gr("type_identifier_body"));
142
+ var Y = Xr([
143
+ "_",
144
+ zr,
145
+ V
146
+ ], n, Gr("identifier_body"));
147
+ var X = g({
148
+ name: "python",
149
+ states: {
150
+ main: { rules: [
151
+ H,
152
+ U,
153
+ ...G,
154
+ ...K,
155
+ ...q,
156
+ Xr(B, a),
157
+ W,
158
+ Xr([
159
+ "(",
160
+ ")",
161
+ "[",
162
+ "]",
163
+ "{",
164
+ "}",
165
+ ",",
166
+ ";",
167
+ ":",
168
+ "."
169
+ ], o),
170
+ J,
171
+ Y
172
+ ] },
173
+ identifier_body: { rules: [Xr([
174
+ "_",
175
+ Ur,
176
+ V
177
+ ], n), ei(qr())] },
178
+ type_identifier_body: { rules: [Xr([
179
+ "_",
180
+ Ur,
181
+ V
182
+ ], n), ei(qr())] },
183
+ number: { rules: [
184
+ Xr(["_", Hr], i),
185
+ Xr(".", i, Gr("float_decimal")),
186
+ Xr(["e", "E"], i, Gr("float_exponent_sign")),
187
+ Xr(["j", "J"], i, qr()),
188
+ ei(qr())
189
+ ] },
190
+ float_decimal: { rules: [
191
+ Xr(["_", Hr], i),
192
+ Xr(["e", "E"], i, Gr("float_exponent_sign")),
193
+ Xr(["j", "J"], i, qr()),
194
+ ei(qr())
195
+ ] },
196
+ float_exponent_sign: { rules: [
197
+ Xr(["+", "-"], i, Gr("float_exponent_digits")),
198
+ Xr(Hr, i, Gr("float_exponent_digits")),
199
+ ei(qr())
200
+ ] },
201
+ float_exponent_digits: { rules: [
202
+ Xr(["_", Hr], i),
203
+ Xr(["j", "J"], i, qr()),
204
+ ei(qr())
205
+ ] },
206
+ hex_number: { rules: [Xr(["_", Wr], i), ei(qr())] },
207
+ bin_number: { rules: [Xr([
208
+ "_",
209
+ "0",
210
+ "1"
211
+ ], i), ei(qr())] },
212
+ oct_number: { rules: [Xr(["_", Lr([["0", "7"]])], i), ei(qr())] },
213
+ string_single_dq: { rules: [
214
+ Xr("\\", Fe, Gr("string_escape_start")),
215
+ Xr("\"", c, qr()),
216
+ ei({ token: c })
217
+ ] },
218
+ string_single_sq: { rules: [
219
+ Xr("\\", Fe, Gr("string_escape_start")),
220
+ Xr("'", c, qr()),
221
+ ei({ token: c })
222
+ ] },
223
+ string_triple_dq: { rules: [
224
+ Xr("\\", Fe, Gr("string_escape_start")),
225
+ Xr("\"\"\"", c, qr()),
226
+ ei({ token: c })
227
+ ] },
228
+ string_triple_sq: { rules: [
229
+ Xr("\\", Fe, Gr("string_escape_start")),
230
+ Xr("'''", c, qr()),
231
+ ei({ token: c })
232
+ ] },
233
+ rstring_single_dq: { rules: [
234
+ Xr("\\", c, Gr("raw_esc_consume")),
235
+ Xr("\"", c, qr()),
236
+ ei({ token: c })
237
+ ] },
238
+ rstring_single_sq: { rules: [
239
+ Xr("\\", c, Gr("raw_esc_consume")),
240
+ Xr("'", c, qr()),
241
+ ei({ token: c })
242
+ ] },
243
+ rstring_triple_dq: { rules: [
244
+ Xr("\\", c, Gr("raw_esc_consume")),
245
+ Xr("\"\"\"", c, qr()),
246
+ ei({ token: c })
247
+ ] },
248
+ rstring_triple_sq: { rules: [
249
+ Xr("\\", c, Gr("raw_esc_consume")),
250
+ Xr("'''", c, qr()),
251
+ ei({ token: c })
252
+ ] },
253
+ raw_esc_consume: { rules: [ei({
254
+ token: c,
255
+ exit: !0
256
+ })] },
257
+ string_escape_start: { rules: [
258
+ Xr("x", Fe, Kr("esc_hex_d1")),
259
+ Xr("u", Fe, Kr("esc_u4_d1")),
260
+ Xr("U", Fe, Kr("esc_u8_d1")),
261
+ Xr("N", Fe, Kr("esc_named_open")),
262
+ Xr(Lr([["0", "7"]]), Fe, Kr("esc_oct_d2")),
263
+ ei({
264
+ token: Fe,
265
+ exit: !0
266
+ })
267
+ ] },
268
+ esc_hex_d1: { rules: [Xr(Wr, Fe, Kr("esc_hex_d2")), ei(qr())] },
269
+ esc_hex_d2: { rules: [Xr(Wr, Fe, qr()), ei(qr())] },
270
+ esc_u4_d1: { rules: [Xr(Wr, Fe, Kr("esc_u4_d2")), ei(qr())] },
271
+ esc_u4_d2: { rules: [Xr(Wr, Fe, Kr("esc_u4_d3")), ei(qr())] },
272
+ esc_u4_d3: { rules: [Xr(Wr, Fe, Kr("esc_u4_d4")), ei(qr())] },
273
+ esc_u4_d4: { rules: [Xr(Wr, Fe, qr()), ei(qr())] },
274
+ esc_u8_d1: { rules: [Xr(Wr, Fe, Kr("esc_u8_d2")), ei(qr())] },
275
+ esc_u8_d2: { rules: [Xr(Wr, Fe, Kr("esc_u8_d3")), ei(qr())] },
276
+ esc_u8_d3: { rules: [Xr(Wr, Fe, Kr("esc_u8_d4")), ei(qr())] },
277
+ esc_u8_d4: { rules: [Xr(Wr, Fe, Kr("esc_u8_d5")), ei(qr())] },
278
+ esc_u8_d5: { rules: [Xr(Wr, Fe, Kr("esc_u8_d6")), ei(qr())] },
279
+ esc_u8_d6: { rules: [Xr(Wr, Fe, Kr("esc_u8_d7")), ei(qr())] },
280
+ esc_u8_d7: { rules: [Xr(Wr, Fe, Kr("esc_u8_d8")), ei(qr())] },
281
+ esc_u8_d8: { rules: [Xr(Wr, Fe, qr()), ei(qr())] },
282
+ esc_named_open: { rules: [Xr("{", Fe, Kr("esc_named_body")), ei(qr())] },
283
+ esc_named_body: { rules: [
284
+ Xr("}", Fe, qr()),
285
+ Xr([
286
+ Ur,
287
+ "_",
288
+ " ",
289
+ "-"
290
+ ], Fe),
291
+ ei(qr())
292
+ ] },
293
+ esc_oct_d2: { rules: [Xr(Lr([["0", "7"]]), Fe, Kr("esc_oct_d3")), ei(qr())] },
294
+ esc_oct_d3: { rules: [Xr(Lr([["0", "7"]]), Fe, qr()), ei(qr())] },
295
+ fstring_prefix_probe: {
296
+ mode: "probe",
297
+ fallback: "string_prefix_fallback",
298
+ rules: [Zr([
299
+ "\"\"\"",
300
+ "'''",
301
+ "\"",
302
+ "'"
303
+ ], Gr("fstring_prefix_commit")), ei(Gr("string_prefix_fallback"))]
304
+ },
305
+ fstring_prefix_commit: { rules: [Xr(A, r, Kr("fstring_prefix_quote")), Xr(j, r, Kr("raw_fstring_prefix_quote"))] },
306
+ fstring_prefix_quote: { rules: [
307
+ Xr("\"\"\"", c, Kr("fstring_body_triple_dq")),
308
+ Xr("'''", c, Kr("fstring_body_triple_sq")),
309
+ Xr("\"", c, Kr("fstring_body_single_dq")),
310
+ Xr("'", c, Kr("fstring_body_single_sq"))
311
+ ] },
312
+ raw_fstring_prefix_quote: { rules: [
313
+ Xr("\"\"\"", c, Kr("raw_fstring_body_triple_dq")),
314
+ Xr("'''", c, Kr("raw_fstring_body_triple_sq")),
315
+ Xr("\"", c, Kr("raw_fstring_body_single_dq")),
316
+ Xr("'", c, Kr("raw_fstring_body_single_sq"))
317
+ ] },
318
+ plain_prefix_probe: {
319
+ mode: "probe",
320
+ fallback: "string_prefix_fallback",
321
+ rules: [Zr([
322
+ "\"\"\"",
323
+ "'''",
324
+ "\"",
325
+ "'"
326
+ ], Gr("plain_prefix_commit")), ei(Gr("string_prefix_fallback"))]
327
+ },
328
+ plain_prefix_commit: { rules: [Xr(D, r, Kr("plain_prefix_quote")), Xr(O, r, Kr("raw_prefix_quote"))] },
329
+ plain_prefix_quote: { rules: [
330
+ Xr("\"\"\"", c, Kr("string_triple_dq")),
331
+ Xr("'''", c, Kr("string_triple_sq")),
332
+ Xr("\"", c, Kr("string_single_dq")),
333
+ Xr("'", c, Kr("string_single_sq"))
334
+ ] },
335
+ raw_prefix_quote: { rules: [
336
+ Xr("\"\"\"", c, Kr("rstring_triple_dq")),
337
+ Xr("'''", c, Kr("rstring_triple_sq")),
338
+ Xr("\"", c, Kr("rstring_single_dq")),
339
+ Xr("'", c, Kr("rstring_single_sq"))
340
+ ] },
341
+ string_prefix_fallback: { rules: [Xr(se, n, Kr("identifier_body")), Xr(ce, n, Kr("type_identifier_body"))] },
342
+ fstring_body_single_dq: { rules: [
343
+ Xr("\\", Fe, Gr("string_escape_start")),
344
+ Xr("{{", c),
345
+ Xr("}}", c),
346
+ Xr("{", be$1, Gr("fstring_expr_top")),
347
+ Xr("\"", c, qr()),
348
+ ei({ token: c })
349
+ ] },
350
+ fstring_body_single_sq: { rules: [
351
+ Xr("\\", Fe, Gr("string_escape_start")),
352
+ Xr("{{", c),
353
+ Xr("}}", c),
354
+ Xr("{", be$1, Gr("fstring_expr_top")),
355
+ Xr("'", c, qr()),
356
+ ei({ token: c })
357
+ ] },
358
+ fstring_body_triple_dq: { rules: [
359
+ Xr("\\", Fe, Gr("string_escape_start")),
360
+ Xr("{{", c),
361
+ Xr("}}", c),
362
+ Xr("{", be$1, Gr("fstring_expr_top")),
363
+ Xr("\"\"\"", c, qr()),
364
+ ei({ token: c })
365
+ ] },
366
+ fstring_body_triple_sq: { rules: [
367
+ Xr("\\", Fe, Gr("string_escape_start")),
368
+ Xr("{{", c),
369
+ Xr("}}", c),
370
+ Xr("{", be$1, Gr("fstring_expr_top")),
371
+ Xr("'''", c, qr()),
372
+ ei({ token: c })
373
+ ] },
374
+ raw_fstring_body_single_dq: { rules: [
375
+ Xr("\\", c, Gr("raw_esc_consume")),
376
+ Xr("{{", c),
377
+ Xr("}}", c),
378
+ Xr("{", be$1, Gr("fstring_expr_top")),
379
+ Xr("\"", c, qr()),
380
+ ei({ token: c })
381
+ ] },
382
+ raw_fstring_body_single_sq: { rules: [
383
+ Xr("\\", c, Gr("raw_esc_consume")),
384
+ Xr("{{", c),
385
+ Xr("}}", c),
386
+ Xr("{", be$1, Gr("fstring_expr_top")),
387
+ Xr("'", c, qr()),
388
+ ei({ token: c })
389
+ ] },
390
+ raw_fstring_body_triple_dq: { rules: [
391
+ Xr("\\", c, Gr("raw_esc_consume")),
392
+ Xr("{{", c),
393
+ Xr("}}", c),
394
+ Xr("{", be$1, Gr("fstring_expr_top")),
395
+ Xr("\"\"\"", c, qr()),
396
+ ei({ token: c })
397
+ ] },
398
+ raw_fstring_body_triple_sq: { rules: [
399
+ Xr("\\", c, Gr("raw_esc_consume")),
400
+ Xr("{{", c),
401
+ Xr("}}", c),
402
+ Xr("{", be$1, Gr("fstring_expr_top")),
403
+ Xr("'''", c, qr()),
404
+ ei({ token: c })
405
+ ] },
406
+ fstring_expr_top: { rules: [
407
+ H,
408
+ U,
409
+ ...G,
410
+ ...K,
411
+ Xr([
412
+ "!s",
413
+ "!r",
414
+ "!a"
415
+ ], be$1),
416
+ Xr(B, a),
417
+ W,
418
+ Xr("}", be$1, qr()),
419
+ Xr(":", o, Kr("fstring_format_spec")),
420
+ Xr("{", o, Gr("fstring_expr_nested")),
421
+ Xr(["(", "["], o, Gr("fstring_expr_nested")),
422
+ Xr([")", "]"], o, qr()),
423
+ Xr([
424
+ ",",
425
+ ";",
426
+ "."
427
+ ], o),
428
+ ...q,
429
+ J,
430
+ Y
431
+ ] },
432
+ fstring_expr_nested: { rules: [
433
+ H,
434
+ U,
435
+ ...G,
436
+ ...K,
437
+ Xr(B, a),
438
+ W,
439
+ Xr(he, o, qr()),
440
+ Xr(me, o, Gr("fstring_expr_nested")),
441
+ Xr([
442
+ ",",
443
+ ";",
444
+ ".",
445
+ ":"
446
+ ], o),
447
+ ...q,
448
+ J,
449
+ Y
450
+ ] },
451
+ fstring_format_spec: { rules: [
452
+ Xr("{{", Ie),
453
+ Xr("}}", Ie),
454
+ Xr("{", be$1, Gr("fstring_expr_top")),
455
+ Xr("}", be$1, qr()),
456
+ ei({ token: Ie })
457
+ ] }
458
+ }
459
+ });
460
+ var ge = Mr("identifier", "boolean", P);
461
+ var _e = Mr("identifier", "builtin", I);
462
+ var ve = Nr("identifier", "class_name");
463
+ var ye = Fr("identifier", "constant");
464
+ var be = [{
465
+ anchor: it("identifier", "type"),
466
+ when: at(ot(it("class_name"), it("identifier")), st(lt("[", "]")), it("operator", "=")),
467
+ rewrite: "keyword"
468
+ }];
469
+ var xe = Ir("identifier", "function", { plain: !0 }, { trivia: ["comment"] });
470
+ var Z = [
471
+ Vn(ge, ["boolean"]),
472
+ Vn(_e, ["builtin"]),
473
+ Vn(ye, ["constant"]),
474
+ Vn(ve, ["class_name"]),
475
+ Hn(jn(be, { trivia: ["comment"] }), "type_claim"),
476
+ Vn((e, t) => {
477
+ let { tokens: n, token_types: r } = t, i = r.indexOf("identifier"), a = r.indexOf("keyword"), o = r.indexOf("punctuation");
478
+ if (i < 0 || a < 0 || o < 0) return t;
479
+ let s = r.indexOf("namespace");
480
+ s < 0 && (s = r.length, r.push("namespace"));
481
+ let c = $n(e, n, r), l = c.count, u = (e) => {
482
+ let t = e;
483
+ for (; t >= 0 && t < l;) {
484
+ if (c.is_trivia(t)) {
485
+ t++;
486
+ continue;
487
+ }
488
+ let e = c.kind_of(t);
489
+ if (e === i) {
490
+ n[t * 3] = s, t++;
491
+ continue;
492
+ }
493
+ if (e === o && c.text_of(t) === ".") {
494
+ t++;
495
+ continue;
496
+ }
497
+ break;
498
+ }
499
+ return t;
500
+ };
501
+ for (let e = 0; e < l; e++) {
502
+ if (c.is_trivia(e) || c.kind_of(e) !== a) continue;
503
+ let t = c.text_of(e);
504
+ if (t === "import") {
505
+ let t = c.next_non_trivia(e + 1);
506
+ for (; t >= 0 && t < l && (t = u(t), t = c.next_non_trivia(t), !(t < 0));) {
507
+ if (c.kind_of(t) === a && c.text_of(t) === "as" && (t = c.next_non_trivia(t + 1), t >= 0 && c.kind_of(t) === i && (n[t * 3] = s, t = c.next_non_trivia(t + 1))), t >= 0 && c.kind_of(t) === o && c.text_of(t) === ",") {
508
+ t = c.next_non_trivia(t + 1);
509
+ continue;
510
+ }
511
+ break;
512
+ }
513
+ continue;
514
+ }
515
+ if (t === "from") {
516
+ let t = c.next_non_trivia(e + 1);
517
+ t = u(t), t >= 0 && c.kind_of(t) === a && c.text_of(t) === "import" && (e = t);
518
+ continue;
519
+ }
520
+ }
521
+ return {
522
+ tokens: n,
523
+ token_types: r
524
+ };
525
+ }, ["namespace"]),
526
+ Vn((e, t) => {
527
+ let { tokens: n, token_types: r } = t, i = r.indexOf("identifier"), a = r.indexOf("keyword"), o = r.indexOf("punctuation"), s = r.indexOf("operator");
528
+ if (i < 0 || a < 0 || o < 0) return t;
529
+ let c = r.indexOf("parameter");
530
+ c < 0 && (c = r.length, r.push("parameter"));
531
+ let l = $n(e, n, r), u = l.count, d = (e) => {
532
+ let t = 1, r = !0, a = e + 1;
533
+ for (; a < u && t > 0;) {
534
+ if (l.is_trivia(a)) {
535
+ a++;
536
+ continue;
537
+ }
538
+ let e = l.kind_of(a), u = l.text_of(a);
539
+ if (e === o) {
540
+ for (let e of u) if (e === "(" || e === "[") t++;
541
+ else if (e === ")" || e === "]") {
542
+ if (t--, t === 0) return a + 1;
543
+ } else e === "," && t === 1 && (r = !0);
544
+ a++;
545
+ continue;
546
+ }
547
+ t === 1 && r && e === i ? (n[a * 3] = c, r = !1) : e === s && (u === "*" || u === "**") || (r = !1), a++;
548
+ }
549
+ return a;
550
+ };
551
+ for (let e = 0; e < u; e++) {
552
+ if (l.is_trivia(e) || l.kind_of(e) !== a) continue;
553
+ let t = l.text_of(e);
554
+ if (t === "def") {
555
+ let t = l.next_non_trivia(e + 1);
556
+ if (t < 0 || l.kind_of(t) !== i || (t = l.next_non_trivia(t + 1), t < 0 || l.kind_of(t) !== o || !l.text_of(t).startsWith("("))) continue;
557
+ e = d(t) - 1;
558
+ continue;
559
+ }
560
+ if (t === "lambda") {
561
+ let t = !0, r = l.next_non_trivia(e + 1);
562
+ for (; r < u;) {
563
+ if (l.is_trivia(r)) {
564
+ r++;
565
+ continue;
566
+ }
567
+ let e = l.kind_of(r), a = l.text_of(r);
568
+ if (e === s && a === ":") break;
569
+ if (e === o && (a === "," || a === "(" || a === ")")) {
570
+ a === "," && (t = !0), r++;
571
+ continue;
572
+ }
573
+ e === i && t && (n[r * 3] = c, t = !1), r++;
574
+ }
575
+ e = r;
576
+ }
577
+ }
578
+ return {
579
+ tokens: n,
580
+ token_types: r
581
+ };
582
+ }, ["parameter"]),
583
+ Vn(xe, ["function"])
584
+ ];
585
+ var Q = _(X);
586
+ var $ = qn(Q, Z);
587
+ function Se(e) {
588
+ let t = $(e);
589
+ return (e, n) => ge$1(e, t(e), n);
590
+ }
591
+ //#endregion
592
+ export { Q as grammar, Se as language, X as raw_grammar, Z as reclassifiers, $ as tokenize };