soonjs 0.0.12 → 0.0.13

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.
@@ -0,0 +1,4265 @@
1
+ var Ha = Object.defineProperty;
2
+ var za = (e, t, n) => t in e ? Ha(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
3
+ var Ot = (e, t, n) => za(e, typeof t != "symbol" ? t + "" : t, n);
4
+ var Qa = Object.defineProperty, Lr = (e) => {
5
+ throw TypeError(e);
6
+ }, Qt = (e, t) => {
7
+ for (var n in t) Qa(e, n, { get: t[n], enumerable: !0 });
8
+ }, Mr = (e, t, n) => t.has(e) || Lr("Cannot " + n), Ne = (e, t, n) => (Mr(e, t, "read from private field"), t.get(e)), Ya = (e, t, n) => t.has(e) ? Lr("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, n), Za = (e, t, n, r) => (Mr(e, t, "write to private field"), t.set(e, n), n), Or = {};
9
+ Qt(Or, { languages: () => aD, options: () => rD, printers: () => uD });
10
+ var eo = [{ linguistLanguageId: 183, name: "JavaScript", type: "programming", tmScope: "source.js", aceMode: "javascript", codemirrorMode: "javascript", codemirrorMimeType: "text/javascript", color: "#f1e05a", aliases: ["js", "node"], extensions: [".js", "._js", ".bones", ".cjs", ".es", ".es6", ".frag", ".gs", ".jake", ".javascript", ".jsb", ".jscad", ".jsfl", ".jslib", ".jsm", ".jspre", ".jss", ".mjs", ".njs", ".pac", ".sjs", ".ssjs", ".xsjs", ".xsjslib", ".wxs"], filenames: ["Jakefile"], interpreters: ["chakra", "d8", "gjs", "js", "node", "nodejs", "qjs", "rhino", "v8", "v8-shell", "zx"], parsers: ["babel", "acorn", "espree", "meriyah", "babel-flow", "babel-ts", "flow", "typescript"], vscodeLanguageIds: ["javascript", "mongo"] }, { linguistLanguageId: 183, name: "Flow", type: "programming", tmScope: "source.js", aceMode: "javascript", codemirrorMode: "javascript", codemirrorMimeType: "text/javascript", color: "#f1e05a", aliases: [], extensions: [".js.flow"], filenames: [], interpreters: ["chakra", "d8", "gjs", "js", "node", "nodejs", "qjs", "rhino", "v8", "v8-shell"], parsers: ["flow", "babel-flow"], vscodeLanguageIds: ["javascript"] }, { linguistLanguageId: 183, name: "JSX", type: "programming", tmScope: "source.js.jsx", aceMode: "javascript", codemirrorMode: "jsx", codemirrorMimeType: "text/jsx", color: void 0, aliases: void 0, extensions: [".jsx"], filenames: void 0, interpreters: void 0, parsers: ["babel", "babel-flow", "babel-ts", "flow", "typescript", "espree", "meriyah"], vscodeLanguageIds: ["javascriptreact"], group: "JavaScript" }, { linguistLanguageId: 378, name: "TypeScript", type: "programming", color: "#3178c6", aliases: ["ts"], interpreters: ["deno", "ts-node"], extensions: [".ts", ".cts", ".mts"], tmScope: "source.ts", aceMode: "typescript", codemirrorMode: "javascript", codemirrorMimeType: "application/typescript", parsers: ["typescript", "babel-ts"], vscodeLanguageIds: ["typescript"] }, { linguistLanguageId: 94901924, name: "TSX", type: "programming", color: "#3178c6", group: "TypeScript", extensions: [".tsx"], tmScope: "source.tsx", aceMode: "javascript", codemirrorMode: "jsx", codemirrorMimeType: "text/jsx", parsers: ["typescript", "babel-ts"], vscodeLanguageIds: ["typescriptreact"] }], Jr = {};
11
+ Qt(Jr, { canAttachComment: () => is, embed: () => Ks, experimentalFeatures: () => Kc, getCommentChildNodes: () => ss, getVisitorKeys: () => Xr, handleComments: () => su, insertPragma: () => ip, isBlockComment: () => De, isGap: () => ps, massageAstNode: () => oi, print: () => Vc, printComment: () => Si, willPrintOwnComments: () => Fu });
12
+ var to = (e, t, n, r) => {
13
+ if (!(e && t == null)) return t.replaceAll ? t.replaceAll(n, r) : n.global ? t.replace(n, r) : t.split(n).join(r);
14
+ }, H = to, no = (e, t, n) => {
15
+ if (!(e && t == null)) return Array.isArray(t) || typeof t == "string" ? t[n < 0 ? t.length + n : n] : t.at(n);
16
+ }, M = no;
17
+ function ro(e) {
18
+ return e !== null && typeof e == "object";
19
+ }
20
+ var uo = ro;
21
+ function* ao(e, t) {
22
+ let { getVisitorKeys: n, filter: r = () => !0 } = t, u = (a) => uo(a) && r(a);
23
+ for (let a of n(e)) {
24
+ let o = e[a];
25
+ if (Array.isArray(o)) for (let i of o) u(i) && (yield i);
26
+ else u(o) && (yield o);
27
+ }
28
+ }
29
+ function* oo(e, t) {
30
+ let n = [e];
31
+ for (let r = 0; r < n.length; r++) {
32
+ let u = n[r];
33
+ for (let a of ao(u, t)) yield a, n.push(a);
34
+ }
35
+ }
36
+ function io(e, { getVisitorKeys: t, predicate: n }) {
37
+ for (let r of oo(e, { getVisitorKeys: t })) if (n(r)) return !0;
38
+ return !1;
39
+ }
40
+ var so = () => /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;
41
+ function po(e) {
42
+ return e === 12288 || e >= 65281 && e <= 65376 || e >= 65504 && e <= 65510;
43
+ }
44
+ function lo(e) {
45
+ return e >= 4352 && e <= 4447 || e === 8986 || e === 8987 || e === 9001 || e === 9002 || e >= 9193 && e <= 9196 || e === 9200 || e === 9203 || e === 9725 || e === 9726 || e === 9748 || e === 9749 || e >= 9800 && e <= 9811 || e === 9855 || e === 9875 || e === 9889 || e === 9898 || e === 9899 || e === 9917 || e === 9918 || e === 9924 || e === 9925 || e === 9934 || e === 9940 || e === 9962 || e === 9970 || e === 9971 || e === 9973 || e === 9978 || e === 9981 || e === 9989 || e === 9994 || e === 9995 || e === 10024 || e === 10060 || e === 10062 || e >= 10067 && e <= 10069 || e === 10071 || e >= 10133 && e <= 10135 || e === 10160 || e === 10175 || e === 11035 || e === 11036 || e === 11088 || e === 11093 || e >= 11904 && e <= 11929 || e >= 11931 && e <= 12019 || e >= 12032 && e <= 12245 || e >= 12272 && e <= 12287 || e >= 12289 && e <= 12350 || e >= 12353 && e <= 12438 || e >= 12441 && e <= 12543 || e >= 12549 && e <= 12591 || e >= 12593 && e <= 12686 || e >= 12688 && e <= 12771 || e >= 12783 && e <= 12830 || e >= 12832 && e <= 12871 || e >= 12880 && e <= 19903 || e >= 19968 && e <= 42124 || e >= 42128 && e <= 42182 || e >= 43360 && e <= 43388 || e >= 44032 && e <= 55203 || e >= 63744 && e <= 64255 || e >= 65040 && e <= 65049 || e >= 65072 && e <= 65106 || e >= 65108 && e <= 65126 || e >= 65128 && e <= 65131 || e >= 94176 && e <= 94180 || e === 94192 || e === 94193 || e >= 94208 && e <= 100343 || e >= 100352 && e <= 101589 || e >= 101632 && e <= 101640 || e >= 110576 && e <= 110579 || e >= 110581 && e <= 110587 || e === 110589 || e === 110590 || e >= 110592 && e <= 110882 || e === 110898 || e >= 110928 && e <= 110930 || e === 110933 || e >= 110948 && e <= 110951 || e >= 110960 && e <= 111355 || e === 126980 || e === 127183 || e === 127374 || e >= 127377 && e <= 127386 || e >= 127488 && e <= 127490 || e >= 127504 && e <= 127547 || e >= 127552 && e <= 127560 || e === 127568 || e === 127569 || e >= 127584 && e <= 127589 || e >= 127744 && e <= 127776 || e >= 127789 && e <= 127797 || e >= 127799 && e <= 127868 || e >= 127870 && e <= 127891 || e >= 127904 && e <= 127946 || e >= 127951 && e <= 127955 || e >= 127968 && e <= 127984 || e === 127988 || e >= 127992 && e <= 128062 || e === 128064 || e >= 128066 && e <= 128252 || e >= 128255 && e <= 128317 || e >= 128331 && e <= 128334 || e >= 128336 && e <= 128359 || e === 128378 || e === 128405 || e === 128406 || e === 128420 || e >= 128507 && e <= 128591 || e >= 128640 && e <= 128709 || e === 128716 || e >= 128720 && e <= 128722 || e >= 128725 && e <= 128727 || e >= 128732 && e <= 128735 || e === 128747 || e === 128748 || e >= 128756 && e <= 128764 || e >= 128992 && e <= 129003 || e === 129008 || e >= 129292 && e <= 129338 || e >= 129340 && e <= 129349 || e >= 129351 && e <= 129535 || e >= 129648 && e <= 129660 || e >= 129664 && e <= 129672 || e >= 129680 && e <= 129725 || e >= 129727 && e <= 129733 || e >= 129742 && e <= 129755 || e >= 129760 && e <= 129768 || e >= 129776 && e <= 129784 || e >= 131072 && e <= 196605 || e >= 196608 && e <= 262141;
46
+ }
47
+ var co = (e) => !(po(e) || lo(e)), Do = /[^\x20-\x7F]/u;
48
+ function yo(e) {
49
+ if (!e) return 0;
50
+ if (!Do.test(e)) return e.length;
51
+ e = e.replace(so(), " ");
52
+ let t = 0;
53
+ for (let n of e) {
54
+ let r = n.codePointAt(0);
55
+ r <= 31 || r >= 127 && r <= 159 || r >= 768 && r <= 879 || (t += co(r) ? 1 : 2);
56
+ }
57
+ return t;
58
+ }
59
+ var ot = yo;
60
+ function Ln(e) {
61
+ return (t, n, r) => {
62
+ let u = !!(r != null && r.backwards);
63
+ if (n === !1) return !1;
64
+ let { length: a } = t, o = n;
65
+ for (; o >= 0 && o < a; ) {
66
+ let i = t.charAt(o);
67
+ if (e instanceof RegExp) {
68
+ if (!e.test(i)) return o;
69
+ } else if (!e.includes(i)) return o;
70
+ u ? o-- : o++;
71
+ }
72
+ return o === -1 || o === a ? o : !1;
73
+ };
74
+ }
75
+ var it = Ln(" "), mo = Ln(",; "), fo = Ln(/[^\n\r]/u);
76
+ function Eo(e, t, n) {
77
+ let r = !!(n != null && n.backwards);
78
+ if (t === !1) return !1;
79
+ let u = e.charAt(t);
80
+ if (r) {
81
+ if (e.charAt(t - 1) === "\r" && u === `
82
+ `) return t - 2;
83
+ if (u === `
84
+ ` || u === "\r" || u === "\u2028" || u === "\u2029") return t - 1;
85
+ } else {
86
+ if (u === "\r" && e.charAt(t + 1) === `
87
+ `) return t + 2;
88
+ if (u === `
89
+ ` || u === "\r" || u === "\u2028" || u === "\u2029") return t + 1;
90
+ }
91
+ return t;
92
+ }
93
+ var st = Eo;
94
+ function Fo(e, t, n = {}) {
95
+ let r = it(e, n.backwards ? t - 1 : t, n), u = st(e, r, n);
96
+ return r !== u;
97
+ }
98
+ var ie = Fo;
99
+ function Ao(e, t) {
100
+ if (t === !1) return !1;
101
+ if (e.charAt(t) === "/" && e.charAt(t + 1) === "*") {
102
+ for (let n = t + 2; n < e.length; ++n) if (e.charAt(n) === "*" && e.charAt(n + 1) === "/") return n + 2;
103
+ }
104
+ return t;
105
+ }
106
+ var Mn = Ao;
107
+ function go(e, t) {
108
+ return t === !1 ? !1 : e.charAt(t) === "/" && e.charAt(t + 1) === "/" ? fo(e, t) : t;
109
+ }
110
+ var On = go;
111
+ function Co(e, t) {
112
+ let n = null, r = t;
113
+ for (; r !== n; ) n = r, r = mo(e, r), r = Mn(e, r), r = it(e, r);
114
+ return r = On(e, r), r = st(e, r), r !== !1 && ie(e, r);
115
+ }
116
+ var Jn = Co;
117
+ function ho(e) {
118
+ return Array.isArray(e) && e.length > 0;
119
+ }
120
+ var O = ho, Jt = "'", pr = '"';
121
+ function xo(e, t) {
122
+ let n = t === !0 || t === Jt ? Jt : pr, r = n === Jt ? pr : Jt, u = 0, a = 0;
123
+ for (let o of e) o === n ? u++ : o === r && a++;
124
+ return u > a ? r : n;
125
+ }
126
+ var qr = xo;
127
+ function To(e, t, n) {
128
+ let r = t === '"' ? "'" : '"', u = H(!1, e, /\\(.)|(["'])/gsu, (a, o, i) => o === r ? o : i === t ? "\\" + i : i || (n && /^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(o) ? o : "\\" + o));
129
+ return t + u + t;
130
+ }
131
+ var So = To;
132
+ function bo(e, t) {
133
+ let n = e.slice(1, -1), r = t.parser === "json" || t.parser === "jsonc" || t.parser === "json5" && t.quoteProps === "preserve" && !t.singleQuote ? '"' : t.__isInHtmlAttribute ? "'" : qr(n, t.singleQuote);
134
+ return So(n, r, !(t.parser === "css" || t.parser === "less" || t.parser === "scss" || t.__embeddedInHtml));
135
+ }
136
+ var pt = bo;
137
+ function $(e) {
138
+ var t, n, r;
139
+ let u = ((t = e.range) == null ? void 0 : t[0]) ?? e.start, a = (r = ((n = e.declaration) == null ? void 0 : n.decorators) ?? e.decorators) == null ? void 0 : r[0];
140
+ return a ? Math.min($(a), u) : u;
141
+ }
142
+ function I(e) {
143
+ var t;
144
+ return ((t = e.range) == null ? void 0 : t[1]) ?? e.end;
145
+ }
146
+ function Yt(e, t) {
147
+ let n = $(e);
148
+ return Number.isInteger(n) && n === $(t);
149
+ }
150
+ function Bo(e, t) {
151
+ let n = I(e);
152
+ return Number.isInteger(n) && n === I(t);
153
+ }
154
+ function vo(e, t) {
155
+ return Yt(e, t) && Bo(e, t);
156
+ }
157
+ var Ct = null;
158
+ function xt(e) {
159
+ if (Ct !== null && typeof Ct.property) {
160
+ let t = Ct;
161
+ return Ct = xt.prototype = null, t;
162
+ }
163
+ return Ct = xt.prototype = e ?? /* @__PURE__ */ Object.create(null), new xt();
164
+ }
165
+ var ko = 10;
166
+ for (let e = 0; e <= ko; e++) xt();
167
+ function Po(e) {
168
+ return xt(e);
169
+ }
170
+ function wo(e, t = "type") {
171
+ Po(e);
172
+ function n(r) {
173
+ let u = r[t], a = e[u];
174
+ if (!Array.isArray(a)) throw Object.assign(new Error(`Missing visitor keys for '${u}'.`), { node: r });
175
+ return a;
176
+ }
177
+ return n;
178
+ }
179
+ var _r = wo, No = { ArrayExpression: ["elements"], AssignmentExpression: ["left", "right"], BinaryExpression: ["left", "right"], InterpreterDirective: [], Directive: ["value"], DirectiveLiteral: [], BlockStatement: ["directives", "body"], BreakStatement: ["label"], CallExpression: ["callee", "arguments", "typeParameters", "typeArguments"], CatchClause: ["param", "body"], ConditionalExpression: ["test", "consequent", "alternate"], ContinueStatement: ["label"], DebuggerStatement: [], DoWhileStatement: ["test", "body"], EmptyStatement: [], ExpressionStatement: ["expression"], File: ["program"], ForInStatement: ["left", "right", "body"], ForStatement: ["init", "test", "update", "body"], FunctionDeclaration: ["id", "params", "body", "returnType", "typeParameters", "predicate"], FunctionExpression: ["id", "params", "body", "returnType", "typeParameters"], Identifier: ["typeAnnotation", "decorators"], IfStatement: ["test", "consequent", "alternate"], LabeledStatement: ["label", "body"], StringLiteral: [], NumericLiteral: [], NullLiteral: [], BooleanLiteral: [], RegExpLiteral: [], LogicalExpression: ["left", "right"], MemberExpression: ["object", "property"], NewExpression: ["callee", "arguments", "typeParameters", "typeArguments"], Program: ["directives", "body"], ObjectExpression: ["properties"], ObjectMethod: ["key", "params", "body", "decorators", "returnType", "typeParameters"], ObjectProperty: ["key", "value", "decorators"], RestElement: ["argument", "typeAnnotation", "decorators"], ReturnStatement: ["argument"], SequenceExpression: ["expressions"], ParenthesizedExpression: ["expression"], SwitchCase: ["test", "consequent"], SwitchStatement: ["discriminant", "cases"], ThisExpression: [], ThrowStatement: ["argument"], TryStatement: ["block", "handler", "finalizer"], UnaryExpression: ["argument"], UpdateExpression: ["argument"], VariableDeclaration: ["declarations"], VariableDeclarator: ["id", "init"], WhileStatement: ["test", "body"], WithStatement: ["object", "body"], AssignmentPattern: ["left", "right", "decorators", "typeAnnotation"], ArrayPattern: ["elements", "typeAnnotation", "decorators"], ArrowFunctionExpression: ["params", "body", "returnType", "typeParameters", "predicate"], ClassBody: ["body"], ClassExpression: ["id", "body", "superClass", "mixins", "typeParameters", "superTypeParameters", "implements", "decorators", "superTypeArguments"], ClassDeclaration: ["id", "body", "superClass", "mixins", "typeParameters", "superTypeParameters", "implements", "decorators", "superTypeArguments"], ExportAllDeclaration: ["source", "attributes", "exported"], ExportDefaultDeclaration: ["declaration"], ExportNamedDeclaration: ["declaration", "specifiers", "source", "attributes"], ExportSpecifier: ["local", "exported"], ForOfStatement: ["left", "right", "body"], ImportDeclaration: ["specifiers", "source", "attributes"], ImportDefaultSpecifier: ["local"], ImportNamespaceSpecifier: ["local"], ImportSpecifier: ["local", "imported"], ImportExpression: ["source", "options", "attributes"], MetaProperty: ["meta", "property"], ClassMethod: ["key", "params", "body", "decorators", "returnType", "typeParameters"], ObjectPattern: ["properties", "typeAnnotation", "decorators"], SpreadElement: ["argument"], Super: [], TaggedTemplateExpression: ["tag", "quasi", "typeParameters", "typeArguments"], TemplateElement: [], TemplateLiteral: ["quasis", "expressions"], YieldExpression: ["argument"], AwaitExpression: ["argument"], Import: [], BigIntLiteral: [], ExportNamespaceSpecifier: ["exported"], OptionalMemberExpression: ["object", "property"], OptionalCallExpression: ["callee", "arguments", "typeParameters", "typeArguments"], ClassProperty: ["key", "value", "typeAnnotation", "decorators", "variance"], ClassAccessorProperty: ["key", "value", "typeAnnotation", "decorators"], ClassPrivateProperty: ["key", "value", "decorators", "typeAnnotation", "variance"], ClassPrivateMethod: ["key", "params", "body", "decorators", "returnType", "typeParameters"], PrivateName: ["id"], StaticBlock: ["body"], AnyTypeAnnotation: [], ArrayTypeAnnotation: ["elementType"], BooleanTypeAnnotation: [], BooleanLiteralTypeAnnotation: [], NullLiteralTypeAnnotation: [], ClassImplements: ["id", "typeParameters"], DeclareClass: ["id", "typeParameters", "extends", "mixins", "implements", "body"], DeclareFunction: ["id", "predicate"], DeclareInterface: ["id", "typeParameters", "extends", "body"], DeclareModule: ["id", "body"], DeclareModuleExports: ["typeAnnotation"], DeclareTypeAlias: ["id", "typeParameters", "right"], DeclareOpaqueType: ["id", "typeParameters", "supertype"], DeclareVariable: ["id"], DeclareExportDeclaration: ["declaration", "specifiers", "source"], DeclareExportAllDeclaration: ["source"], DeclaredPredicate: ["value"], ExistsTypeAnnotation: [], FunctionTypeAnnotation: ["typeParameters", "params", "rest", "returnType", "this"], FunctionTypeParam: ["name", "typeAnnotation"], GenericTypeAnnotation: ["id", "typeParameters"], InferredPredicate: [], InterfaceExtends: ["id", "typeParameters"], InterfaceDeclaration: ["id", "typeParameters", "extends", "body"], InterfaceTypeAnnotation: ["extends", "body"], IntersectionTypeAnnotation: ["types"], MixedTypeAnnotation: [], EmptyTypeAnnotation: [], NullableTypeAnnotation: ["typeAnnotation"], NumberLiteralTypeAnnotation: [], NumberTypeAnnotation: [], ObjectTypeAnnotation: ["properties", "indexers", "callProperties", "internalSlots"], ObjectTypeInternalSlot: ["id", "value"], ObjectTypeCallProperty: ["value"], ObjectTypeIndexer: ["id", "key", "value", "variance"], ObjectTypeProperty: ["key", "value", "variance"], ObjectTypeSpreadProperty: ["argument"], OpaqueType: ["id", "typeParameters", "supertype", "impltype"], QualifiedTypeIdentifier: ["id", "qualification"], StringLiteralTypeAnnotation: [], StringTypeAnnotation: [], SymbolTypeAnnotation: [], ThisTypeAnnotation: [], TupleTypeAnnotation: ["types", "elementTypes"], TypeofTypeAnnotation: ["argument", "typeArguments"], TypeAlias: ["id", "typeParameters", "right"], TypeAnnotation: ["typeAnnotation"], TypeCastExpression: ["expression", "typeAnnotation"], TypeParameter: ["bound", "default", "variance"], TypeParameterDeclaration: ["params"], TypeParameterInstantiation: ["params"], UnionTypeAnnotation: ["types"], Variance: [], VoidTypeAnnotation: [], EnumDeclaration: ["id", "body"], EnumBooleanBody: ["members"], EnumNumberBody: ["members"], EnumStringBody: ["members"], EnumSymbolBody: ["members"], EnumBooleanMember: ["id", "init"], EnumNumberMember: ["id", "init"], EnumStringMember: ["id", "init"], EnumDefaultedMember: ["id"], IndexedAccessType: ["objectType", "indexType"], OptionalIndexedAccessType: ["objectType", "indexType"], JSXAttribute: ["name", "value"], JSXClosingElement: ["name"], JSXElement: ["openingElement", "children", "closingElement"], JSXEmptyExpression: [], JSXExpressionContainer: ["expression"], JSXSpreadChild: ["expression"], JSXIdentifier: [], JSXMemberExpression: ["object", "property"], JSXNamespacedName: ["namespace", "name"], JSXOpeningElement: ["name", "attributes", "typeArguments", "typeParameters"], JSXSpreadAttribute: ["argument"], JSXText: [], JSXFragment: ["openingFragment", "children", "closingFragment"], JSXOpeningFragment: [], JSXClosingFragment: [], Noop: [], Placeholder: [], V8IntrinsicIdentifier: [], ArgumentPlaceholder: [], BindExpression: ["object", "callee"], ImportAttribute: ["key", "value"], Decorator: ["expression"], DoExpression: ["body"], ExportDefaultSpecifier: ["exported"], RecordExpression: ["properties"], TupleExpression: ["elements"], DecimalLiteral: [], ModuleExpression: ["body"], TopicReference: [], PipelineTopicExpression: ["expression"], PipelineBareFunction: ["callee"], PipelinePrimaryTopicReference: [], TSParameterProperty: ["parameter", "decorators"], TSDeclareFunction: ["id", "typeParameters", "params", "returnType", "body"], TSDeclareMethod: ["decorators", "key", "typeParameters", "params", "returnType"], TSQualifiedName: ["left", "right"], TSCallSignatureDeclaration: ["typeParameters", "parameters", "typeAnnotation", "params", "returnType"], TSConstructSignatureDeclaration: ["typeParameters", "parameters", "typeAnnotation", "params", "returnType"], TSPropertySignature: ["key", "typeAnnotation"], TSMethodSignature: ["key", "typeParameters", "parameters", "typeAnnotation", "params", "returnType"], TSIndexSignature: ["parameters", "typeAnnotation"], TSAnyKeyword: [], TSBooleanKeyword: [], TSBigIntKeyword: [], TSIntrinsicKeyword: [], TSNeverKeyword: [], TSNullKeyword: [], TSNumberKeyword: [], TSObjectKeyword: [], TSStringKeyword: [], TSSymbolKeyword: [], TSUndefinedKeyword: [], TSUnknownKeyword: [], TSVoidKeyword: [], TSThisType: [], TSFunctionType: ["typeParameters", "parameters", "typeAnnotation", "params", "returnType"], TSConstructorType: ["typeParameters", "parameters", "typeAnnotation", "params", "returnType"], TSTypeReference: ["typeName", "typeParameters", "typeArguments"], TSTypePredicate: ["parameterName", "typeAnnotation"], TSTypeQuery: ["exprName", "typeParameters", "typeArguments"], TSTypeLiteral: ["members"], TSArrayType: ["elementType"], TSTupleType: ["elementTypes"], TSOptionalType: ["typeAnnotation"], TSRestType: ["typeAnnotation"], TSNamedTupleMember: ["label", "elementType"], TSUnionType: ["types"], TSIntersectionType: ["types"], TSConditionalType: ["checkType", "extendsType", "trueType", "falseType"], TSInferType: ["typeParameter"], TSParenthesizedType: ["typeAnnotation"], TSTypeOperator: ["typeAnnotation"], TSIndexedAccessType: ["objectType", "indexType"], TSMappedType: ["typeParameter", "typeAnnotation", "nameType"], TSLiteralType: ["literal"], TSExpressionWithTypeArguments: ["expression", "typeParameters"], TSInterfaceDeclaration: ["id", "typeParameters", "extends", "body"], TSInterfaceBody: ["body"], TSTypeAliasDeclaration: ["id", "typeParameters", "typeAnnotation"], TSInstantiationExpression: ["expression", "typeParameters", "typeArguments"], TSAsExpression: ["expression", "typeAnnotation"], TSSatisfiesExpression: ["expression", "typeAnnotation"], TSTypeAssertion: ["typeAnnotation", "expression"], TSEnumDeclaration: ["id", "members"], TSEnumMember: ["id", "initializer"], TSModuleDeclaration: ["id", "body"], TSModuleBlock: ["body"], TSImportType: ["argument", "qualifier", "typeParameters", "typeArguments"], TSImportEqualsDeclaration: ["id", "moduleReference"], TSExternalModuleReference: ["expression"], TSNonNullExpression: ["expression"], TSExportAssignment: ["expression"], TSNamespaceExportDeclaration: ["id"], TSTypeAnnotation: ["typeAnnotation"], TSTypeParameterInstantiation: ["params"], TSTypeParameterDeclaration: ["params"], TSTypeParameter: ["constraint", "default", "name"], ChainExpression: ["expression"], ExperimentalRestProperty: ["argument"], ExperimentalSpreadProperty: ["argument"], Literal: [], MethodDefinition: ["decorators", "key", "value"], PrivateIdentifier: [], Property: ["key", "value"], PropertyDefinition: ["decorators", "key", "typeAnnotation", "value", "variance"], AccessorProperty: ["decorators", "key", "typeAnnotation", "value"], TSAbstractAccessorProperty: ["decorators", "key", "typeAnnotation"], TSAbstractKeyword: [], TSAbstractMethodDefinition: ["key", "value"], TSAbstractPropertyDefinition: ["decorators", "key", "typeAnnotation"], TSAsyncKeyword: [], TSClassImplements: ["expression", "typeArguments", "typeParameters"], TSDeclareKeyword: [], TSEmptyBodyFunctionExpression: ["id", "typeParameters", "params", "returnType"], TSEnumBody: ["members"], TSExportKeyword: [], TSInterfaceHeritage: ["expression", "typeArguments", "typeParameters"], TSPrivateKeyword: [], TSProtectedKeyword: [], TSPublicKeyword: [], TSReadonlyKeyword: [], TSStaticKeyword: [], TSTemplateLiteralType: ["quasis", "types"], AsConstExpression: ["expression"], AsExpression: ["expression", "typeAnnotation"], BigIntLiteralTypeAnnotation: [], BigIntTypeAnnotation: [], ComponentDeclaration: ["id", "params", "body", "typeParameters", "rendersType"], ComponentParameter: ["name", "local"], ComponentTypeAnnotation: ["params", "rest", "typeParameters", "rendersType"], ComponentTypeParameter: ["name", "typeAnnotation"], ConditionalTypeAnnotation: ["checkType", "extendsType", "trueType", "falseType"], DeclareComponent: ["id", "params", "rest", "typeParameters", "rendersType"], DeclareEnum: ["id", "body"], DeclareHook: ["id"], DeclareNamespace: ["id", "body"], EnumBigIntBody: ["members"], EnumBigIntMember: ["id", "init"], HookDeclaration: ["id", "params", "body", "typeParameters", "returnType"], HookTypeAnnotation: ["params", "returnType", "rest", "typeParameters"], InferTypeAnnotation: ["typeParameter"], KeyofTypeAnnotation: ["argument"], ObjectTypeMappedTypeProperty: ["keyTparam", "propType", "sourceType", "variance"], QualifiedTypeofIdentifier: ["qualification", "id"], TupleTypeLabeledElement: ["label", "elementType", "variance"], TupleTypeSpreadElement: ["label", "typeAnnotation"], TypeOperator: ["typeAnnotation"], TypePredicate: ["parameterName", "typeAnnotation", "asserts"], NGRoot: ["node"], NGPipeExpression: ["left", "right", "arguments"], NGChainedExpression: ["expressions"], NGEmptyExpression: [], NGMicrosyntax: ["body"], NGMicrosyntaxKey: [], NGMicrosyntaxExpression: ["expression", "alias"], NGMicrosyntaxKeyedExpression: ["key", "expression"], NGMicrosyntaxLet: ["key", "value"], NGMicrosyntaxAs: ["key", "alias"], JsExpressionRoot: ["node"], JsonRoot: ["node"], TSJSDocAllType: [], TSJSDocUnknownType: [], TSJSDocNullableType: ["typeAnnotation"], TSJSDocNonNullableType: ["typeAnnotation"], NeverTypeAnnotation: [], UndefinedTypeAnnotation: [], UnknownTypeAnnotation: [], SatisfiesExpression: ["expression", "typeAnnotation"] }, Io = _r(No), Xr = Io;
180
+ function jo(e) {
181
+ let t = new Set(e);
182
+ return (n) => t.has(n == null ? void 0 : n.type);
183
+ }
184
+ var q = jo, Lo = q(["Block", "CommentBlock", "MultiLine"]), De = Lo, Mo = q(["AnyTypeAnnotation", "ThisTypeAnnotation", "NumberTypeAnnotation", "VoidTypeAnnotation", "BooleanTypeAnnotation", "BigIntTypeAnnotation", "SymbolTypeAnnotation", "StringTypeAnnotation", "NeverTypeAnnotation", "UndefinedTypeAnnotation", "UnknownTypeAnnotation", "EmptyTypeAnnotation", "MixedTypeAnnotation"]), $r = Mo;
185
+ function Oo(e, t) {
186
+ let n = t.split(".");
187
+ for (let r = n.length - 1; r >= 0; r--) {
188
+ let u = n[r];
189
+ if (r === 0) return e.type === "Identifier" && e.name === u;
190
+ if (e.type !== "MemberExpression" || e.optional || e.computed || e.property.type !== "Identifier" || e.property.name !== u) return !1;
191
+ e = e.object;
192
+ }
193
+ }
194
+ function Jo(e, t) {
195
+ return t.some((n) => Oo(e, n));
196
+ }
197
+ var qo = Jo;
198
+ function _o({ type: e }) {
199
+ return e.startsWith("TS") && e.endsWith("Keyword");
200
+ }
201
+ var Rr = _o;
202
+ function gn(e, t) {
203
+ return t(e) || io(e, { getVisitorKeys: Xr, predicate: t });
204
+ }
205
+ function qn(e) {
206
+ return e.type === "AssignmentExpression" || e.type === "BinaryExpression" || e.type === "LogicalExpression" || e.type === "NGPipeExpression" || e.type === "ConditionalExpression" || L(e) || W(e) || e.type === "SequenceExpression" || e.type === "TaggedTemplateExpression" || e.type === "BindExpression" || e.type === "UpdateExpression" && !e.prefix || he(e) || e.type === "TSNonNullExpression" || e.type === "ChainExpression";
207
+ }
208
+ function Xo(e) {
209
+ return e.expressions ? e.expressions[0] : e.left ?? e.test ?? e.callee ?? e.object ?? e.tag ?? e.argument ?? e.expression;
210
+ }
211
+ function Wr(e) {
212
+ if (e.expressions) return ["expressions", 0];
213
+ if (e.left) return ["left"];
214
+ if (e.test) return ["test"];
215
+ if (e.object) return ["object"];
216
+ if (e.callee) return ["callee"];
217
+ if (e.tag) return ["tag"];
218
+ if (e.argument) return ["argument"];
219
+ if (e.expression) return ["expression"];
220
+ throw new Error("Unexpected node has no left side.");
221
+ }
222
+ var Zt = q(["Line", "CommentLine", "SingleLine", "HashbangComment", "HTMLOpen", "HTMLClose", "Hashbang", "InterpreterDirective"]), $o = q(["ExportDefaultDeclaration", "DeclareExportDeclaration", "ExportNamedDeclaration", "ExportAllDeclaration", "DeclareExportAllDeclaration"]), Q = q(["ArrayExpression", "TupleExpression"]), Ae = q(["ObjectExpression", "RecordExpression"]);
223
+ function Ro(e) {
224
+ return e.type === "LogicalExpression" && e.operator === "??";
225
+ }
226
+ function be(e) {
227
+ return e.type === "NumericLiteral" || e.type === "Literal" && typeof e.value == "number";
228
+ }
229
+ function Ur(e) {
230
+ return e.type === "UnaryExpression" && (e.operator === "+" || e.operator === "-") && be(e.argument);
231
+ }
232
+ function re(e) {
233
+ return !!(e && (e.type === "StringLiteral" || e.type === "Literal" && typeof e.value == "string"));
234
+ }
235
+ function Gr(e) {
236
+ return e.type === "RegExpLiteral" || e.type === "Literal" && !!e.regex;
237
+ }
238
+ var _n = q(["Literal", "BooleanLiteral", "BigIntLiteral", "DecimalLiteral", "DirectiveLiteral", "NullLiteral", "NumericLiteral", "RegExpLiteral", "StringLiteral"]), Wo = q(["Identifier", "ThisExpression", "Super", "PrivateName", "PrivateIdentifier", "Import"]), Le = q(["ObjectTypeAnnotation", "TSTypeLiteral", "TSMappedType"]), Bt = q(["FunctionExpression", "ArrowFunctionExpression"]);
239
+ function Uo(e) {
240
+ return e.type === "FunctionExpression" || e.type === "ArrowFunctionExpression" && e.body.type === "BlockStatement";
241
+ }
242
+ function pn(e) {
243
+ return L(e) && e.callee.type === "Identifier" && ["async", "inject", "fakeAsync", "waitForAsync"].includes(e.callee.name);
244
+ }
245
+ var V = q(["JSXElement", "JSXFragment"]);
246
+ function en(e) {
247
+ return e.method && e.kind === "init" || e.kind === "get" || e.kind === "set";
248
+ }
249
+ function Vr(e) {
250
+ return (e.type === "ObjectTypeProperty" || e.type === "ObjectTypeInternalSlot") && !e.static && !e.method && e.kind !== "get" && e.kind !== "set" && e.value.type === "FunctionTypeAnnotation";
251
+ }
252
+ function Go(e) {
253
+ return (e.type === "TypeAnnotation" || e.type === "TSTypeAnnotation") && e.typeAnnotation.type === "FunctionTypeAnnotation" && !e.static && !Yt(e, e.typeAnnotation);
254
+ }
255
+ var Be = q(["BinaryExpression", "LogicalExpression", "NGPipeExpression"]);
256
+ function ut(e) {
257
+ return W(e) || e.type === "BindExpression" && !!e.object;
258
+ }
259
+ var Vo = q(["TSThisType", "NullLiteralTypeAnnotation", "BooleanLiteralTypeAnnotation", "StringLiteralTypeAnnotation", "BigIntLiteralTypeAnnotation", "NumberLiteralTypeAnnotation", "TSLiteralType", "TSTemplateLiteralType"]);
260
+ function Xn(e) {
261
+ return Rr(e) || $r(e) || Vo(e) || (e.type === "GenericTypeAnnotation" || e.type === "TSTypeReference") && !e.typeParameters && !e.typeArguments;
262
+ }
263
+ function Ko(e) {
264
+ return e.type === "Identifier" && (e.name === "beforeEach" || e.name === "beforeAll" || e.name === "afterEach" || e.name === "afterAll");
265
+ }
266
+ var Ho = ["it", "it.only", "it.skip", "describe", "describe.only", "describe.skip", "test", "test.only", "test.skip", "test.step", "test.describe", "test.describe.only", "test.describe.parallel", "test.describe.parallel.only", "test.describe.serial", "test.describe.serial.only", "skip", "xit", "xdescribe", "xtest", "fit", "fdescribe", "ftest"];
267
+ function zo(e) {
268
+ return qo(e, Ho);
269
+ }
270
+ function tn(e, t) {
271
+ if ((e == null ? void 0 : e.type) !== "CallExpression" || e.optional) return !1;
272
+ let n = ye(e);
273
+ if (n.length === 1) {
274
+ if (pn(e) && tn(t)) return Bt(n[0]);
275
+ if (Ko(e.callee)) return pn(n[0]);
276
+ } else if ((n.length === 2 || n.length === 3) && (n[0].type === "TemplateLiteral" || re(n[0])) && zo(e.callee)) return n[2] && !be(n[2]) ? !1 : (n.length === 2 ? Bt(n[1]) : Uo(n[1]) && Z(n[1]).length <= 1) || pn(n[1]);
277
+ return !1;
278
+ }
279
+ var Kr = (e) => (t) => ((t == null ? void 0 : t.type) === "ChainExpression" && (t = t.expression), e(t)), L = Kr(q(["CallExpression", "OptionalCallExpression"])), W = Kr(q(["MemberExpression", "OptionalMemberExpression"]));
280
+ function lr(e, t = 5) {
281
+ return Hr(e, t) <= t;
282
+ }
283
+ function Hr(e, t) {
284
+ let n = 0;
285
+ for (let r in e) {
286
+ let u = e[r];
287
+ if (u && typeof u == "object" && typeof u.type == "string" && (n++, n += Hr(u, t - n)), n > t) return n;
288
+ }
289
+ return n;
290
+ }
291
+ var Qo = 0.25;
292
+ function $n(e, t) {
293
+ let { printWidth: n } = t;
294
+ if (x(e)) return !1;
295
+ let r = n * Qo;
296
+ if (e.type === "ThisExpression" || e.type === "Identifier" && e.name.length <= r || Ur(e) && !x(e.argument)) return !0;
297
+ let u = e.type === "Literal" && "regex" in e && e.regex.pattern || e.type === "RegExpLiteral" && e.pattern;
298
+ return u ? u.length <= r : re(e) ? pt(pe(e), t).length <= r : e.type === "TemplateLiteral" ? e.expressions.length === 0 && e.quasis[0].value.raw.length <= r && !e.quasis[0].value.raw.includes(`
299
+ `) : e.type === "UnaryExpression" ? $n(e.argument, { printWidth: n }) : e.type === "CallExpression" && e.arguments.length === 0 && e.callee.type === "Identifier" ? e.callee.name.length <= r - 2 : _n(e);
300
+ }
301
+ function We(e, t) {
302
+ return V(t) ? nn(t) : x(t, S.Leading, (n) => ie(e, I(n)));
303
+ }
304
+ function cr(e) {
305
+ return e.quasis.some((t) => t.value.raw.includes(`
306
+ `));
307
+ }
308
+ function zr(e, t) {
309
+ return (e.type === "TemplateLiteral" && cr(e) || e.type === "TaggedTemplateExpression" && cr(e.quasi)) && !ie(t, $(e), { backwards: !0 });
310
+ }
311
+ function Qr(e) {
312
+ if (!x(e)) return !1;
313
+ let t = M(!1, at(e, S.Dangling), -1);
314
+ return t && !De(t);
315
+ }
316
+ function Yo(e) {
317
+ if (e.length <= 1) return !1;
318
+ let t = 0;
319
+ for (let n of e) if (Bt(n)) {
320
+ if (t += 1, t > 1) return !0;
321
+ } else if (L(n)) {
322
+ for (let r of ye(n)) if (Bt(r)) return !0;
323
+ }
324
+ return !1;
325
+ }
326
+ function Yr(e) {
327
+ let { node: t, parent: n, key: r } = e;
328
+ return r === "callee" && L(t) && L(n) && n.arguments.length > 0 && t.arguments.length > n.arguments.length;
329
+ }
330
+ var Zo = /* @__PURE__ */ new Set(["!", "-", "+", "~"]);
331
+ function Ee(e, t = 2) {
332
+ if (t <= 0) return !1;
333
+ if (e.type === "ChainExpression" || e.type === "TSNonNullExpression") return Ee(e.expression, t);
334
+ let n = (r) => Ee(r, t - 1);
335
+ if (Gr(e)) return ot(e.pattern ?? e.regex.pattern) <= 5;
336
+ if (_n(e) || Wo(e) || e.type === "ArgumentPlaceholder") return !0;
337
+ if (e.type === "TemplateLiteral") return e.quasis.every((r) => !r.value.raw.includes(`
338
+ `)) && e.expressions.every(n);
339
+ if (Ae(e)) return e.properties.every((r) => !r.computed && (r.shorthand || r.value && n(r.value)));
340
+ if (Q(e)) return e.elements.every((r) => r === null || n(r));
341
+ if (lt(e)) {
342
+ if (e.type === "ImportExpression" || Ee(e.callee, t)) {
343
+ let r = ye(e);
344
+ return r.length <= t && r.every(n);
345
+ }
346
+ return !1;
347
+ }
348
+ return W(e) ? Ee(e.object, t) && Ee(e.property, t) : e.type === "UnaryExpression" && Zo.has(e.operator) || e.type === "UpdateExpression" ? Ee(e.argument, t) : !1;
349
+ }
350
+ function pe(e) {
351
+ var t;
352
+ return ((t = e.extra) == null ? void 0 : t.raw) ?? e.raw;
353
+ }
354
+ function ei(e) {
355
+ return e;
356
+ }
357
+ function ke(e, t = "es5") {
358
+ return e.trailingComma === "es5" && t === "es5" || e.trailingComma === "all" && (t === "all" || t === "es5");
359
+ }
360
+ function ee(e, t) {
361
+ switch (e.type) {
362
+ case "BinaryExpression":
363
+ case "LogicalExpression":
364
+ case "AssignmentExpression":
365
+ case "NGPipeExpression":
366
+ return ee(e.left, t);
367
+ case "MemberExpression":
368
+ case "OptionalMemberExpression":
369
+ return ee(e.object, t);
370
+ case "TaggedTemplateExpression":
371
+ return e.tag.type === "FunctionExpression" ? !1 : ee(e.tag, t);
372
+ case "CallExpression":
373
+ case "OptionalCallExpression":
374
+ return e.callee.type === "FunctionExpression" ? !1 : ee(e.callee, t);
375
+ case "ConditionalExpression":
376
+ return ee(e.test, t);
377
+ case "UpdateExpression":
378
+ return !e.prefix && ee(e.argument, t);
379
+ case "BindExpression":
380
+ return e.object && ee(e.object, t);
381
+ case "SequenceExpression":
382
+ return ee(e.expressions[0], t);
383
+ case "ChainExpression":
384
+ case "TSSatisfiesExpression":
385
+ case "TSAsExpression":
386
+ case "TSNonNullExpression":
387
+ case "AsExpression":
388
+ case "AsConstExpression":
389
+ case "SatisfiesExpression":
390
+ return ee(e.expression, t);
391
+ default:
392
+ return t(e);
393
+ }
394
+ }
395
+ var Dr = { "==": !0, "!=": !0, "===": !0, "!==": !0 }, qt = { "*": !0, "/": !0, "%": !0 }, Cn = { ">>": !0, ">>>": !0, "<<": !0 };
396
+ function Rn(e, t) {
397
+ return !(Gt(t) !== Gt(e) || e === "**" || Dr[e] && Dr[t] || t === "%" && qt[e] || e === "%" && qt[t] || t !== e && qt[t] && qt[e] || Cn[e] && Cn[t]);
398
+ }
399
+ var ti = new Map([["|>"], ["??"], ["||"], ["&&"], ["|"], ["^"], ["&"], ["==", "===", "!=", "!=="], ["<", ">", "<=", ">=", "in", "instanceof"], [">>", "<<", ">>>"], ["+", "-"], ["*", "/", "%"], ["**"]].flatMap((e, t) => e.map((n) => [n, t])));
400
+ function Gt(e) {
401
+ return ti.get(e);
402
+ }
403
+ function ni(e) {
404
+ return !!Cn[e] || e === "|" || e === "^" || e === "&";
405
+ }
406
+ function ri(e) {
407
+ var t;
408
+ if (e.rest) return !0;
409
+ let n = Z(e);
410
+ return ((t = M(!1, n, -1)) == null ? void 0 : t.type) === "RestElement";
411
+ }
412
+ var ln = /* @__PURE__ */ new WeakMap();
413
+ function Z(e) {
414
+ if (ln.has(e)) return ln.get(e);
415
+ let t = [];
416
+ return e.this && t.push(e.this), Array.isArray(e.parameters) ? t.push(...e.parameters) : Array.isArray(e.params) && t.push(...e.params), e.rest && t.push(e.rest), ln.set(e, t), t;
417
+ }
418
+ function ui(e, t) {
419
+ let { node: n } = e, r = 0, u = (a) => t(a, r++);
420
+ n.this && e.call(u, "this"), Array.isArray(n.parameters) ? e.each(u, "parameters") : Array.isArray(n.params) && e.each(u, "params"), n.rest && e.call(u, "rest");
421
+ }
422
+ var cn = /* @__PURE__ */ new WeakMap();
423
+ function ye(e) {
424
+ if (cn.has(e)) return cn.get(e);
425
+ if (e.type === "ChainExpression") return ye(e.expression);
426
+ let t = e.arguments;
427
+ return e.type === "ImportExpression" && (t = [e.source], e.attributes && t.push(e.attributes), e.options && t.push(e.options)), cn.set(e, t), t;
428
+ }
429
+ function Vt(e, t) {
430
+ let { node: n } = e;
431
+ if (n.type === "ChainExpression") return e.call(() => Vt(e, t), "expression");
432
+ n.type === "ImportExpression" ? (e.call((r) => t(r, 0), "source"), n.attributes && e.call((r) => t(r, 1), "attributes"), n.options && e.call((r) => t(r, 1), "options")) : e.each(t, "arguments");
433
+ }
434
+ function yr(e, t) {
435
+ let n = [];
436
+ if (e.type === "ChainExpression" && (e = e.expression, n.push("expression")), e.type === "ImportExpression") {
437
+ if (t === 0 || t === (e.attributes || e.options ? -2 : -1)) return [...n, "source"];
438
+ if (e.attributes && (t === 1 || t === -1)) return [...n, "attributes"];
439
+ if (e.options && (t === 1 || t === -1)) return [...n, "options"];
440
+ throw new RangeError("Invalid argument index");
441
+ }
442
+ if (t < 0 && (t = e.arguments.length + t), t < 0 || t >= e.arguments.length) throw new RangeError("Invalid argument index");
443
+ return [...n, "arguments", t];
444
+ }
445
+ function Kt(e) {
446
+ return e.value.trim() === "prettier-ignore" && !e.unignore;
447
+ }
448
+ function nn(e) {
449
+ return (e == null ? void 0 : e.prettierIgnore) || x(e, S.PrettierIgnore);
450
+ }
451
+ var S = { Leading: 2, Trailing: 4, Dangling: 8, Block: 16, Line: 32, PrettierIgnore: 64, First: 128, Last: 256 }, Zr = (e, t) => {
452
+ if (typeof e == "function" && (t = e, e = 0), e || t) return (n, r, u) => !(e & S.Leading && !n.leading || e & S.Trailing && !n.trailing || e & S.Dangling && (n.leading || n.trailing) || e & S.Block && !De(n) || e & S.Line && !Zt(n) || e & S.First && r !== 0 || e & S.Last && r !== u.length - 1 || e & S.PrettierIgnore && !Kt(n) || t && !t(n));
453
+ };
454
+ function x(e, t, n) {
455
+ if (!O(e == null ? void 0 : e.comments)) return !1;
456
+ let r = Zr(t, n);
457
+ return r ? e.comments.some(r) : !0;
458
+ }
459
+ function at(e, t, n) {
460
+ if (!Array.isArray(e == null ? void 0 : e.comments)) return [];
461
+ let r = Zr(t, n);
462
+ return r ? e.comments.filter(r) : e.comments;
463
+ }
464
+ var Pe = (e, { originalText: t }) => Jn(t, I(e));
465
+ function lt(e) {
466
+ return L(e) || e.type === "NewExpression" || e.type === "ImportExpression";
467
+ }
468
+ function we(e) {
469
+ return e && (e.type === "ObjectProperty" || e.type === "Property" && !en(e));
470
+ }
471
+ var he = q(["TSAsExpression", "TSSatisfiesExpression", "AsExpression", "AsConstExpression", "SatisfiesExpression"]), Ue = q(["UnionTypeAnnotation", "TSUnionType"]), eu = q(["IntersectionTypeAnnotation", "TSIntersectionType"]), ai = /* @__PURE__ */ new Set(["range", "raw", "comments", "leadingComments", "trailingComments", "innerComments", "extra", "start", "end", "loc", "flags", "errors", "tokens"]), rt = (e) => {
472
+ for (let t of e.quasis) delete t.value;
473
+ };
474
+ function tu(e, t, n) {
475
+ var r, u;
476
+ if (e.type === "Program" && delete t.sourceType, (e.type === "BigIntLiteral" || e.type === "BigIntLiteralTypeAnnotation") && e.value && (t.value = e.value.toLowerCase()), (e.type === "BigIntLiteral" || e.type === "Literal") && e.bigint && (t.bigint = e.bigint.toLowerCase()), e.type === "DecimalLiteral" && (t.value = Number(e.value)), e.type === "Literal" && t.decimal && (t.decimal = Number(e.decimal)), e.type === "EmptyStatement" || e.type === "JSXText" || e.type === "JSXExpressionContainer" && (e.expression.type === "Literal" || e.expression.type === "StringLiteral") && e.expression.value === " ") return null;
477
+ if ((e.type === "Property" || e.type === "ObjectProperty" || e.type === "MethodDefinition" || e.type === "ClassProperty" || e.type === "ClassMethod" || e.type === "PropertyDefinition" || e.type === "TSDeclareMethod" || e.type === "TSPropertySignature" || e.type === "ObjectTypeProperty" || e.type === "ImportAttribute") && e.key && !e.computed) {
478
+ let { key: o } = e;
479
+ re(o) || be(o) ? t.key = String(o.value) : o.type === "Identifier" && (t.key = o.name);
480
+ }
481
+ if (e.type === "JSXElement" && e.openingElement.name.name === "style" && e.openingElement.attributes.some((o) => o.type === "JSXAttribute" && o.name.name === "jsx")) for (let { type: o, expression: i } of t.children) o === "JSXExpressionContainer" && i.type === "TemplateLiteral" && rt(i);
482
+ e.type === "JSXAttribute" && e.name.name === "css" && e.value.type === "JSXExpressionContainer" && e.value.expression.type === "TemplateLiteral" && rt(t.value.expression), e.type === "JSXAttribute" && ((r = e.value) == null ? void 0 : r.type) === "Literal" && /["']|&quot;|&apos;/u.test(e.value.value) && (t.value.value = H(!1, e.value.value, /["']|&quot;|&apos;/gu, '"'));
483
+ let a = e.expression || e.callee;
484
+ if (e.type === "Decorator" && a.type === "CallExpression" && a.callee.name === "Component" && a.arguments.length === 1) {
485
+ let o = e.expression.arguments[0].properties;
486
+ for (let [i, p] of t.expression.arguments[0].properties.entries()) switch (o[i].key.name) {
487
+ case "styles":
488
+ Q(p.value) && rt(p.value.elements[0]);
489
+ break;
490
+ case "template":
491
+ p.value.type === "TemplateLiteral" && rt(p.value);
492
+ break;
493
+ }
494
+ }
495
+ e.type === "TaggedTemplateExpression" && (e.tag.type === "MemberExpression" || e.tag.type === "Identifier" && (e.tag.name === "gql" || e.tag.name === "graphql" || e.tag.name === "css" || e.tag.name === "md" || e.tag.name === "markdown" || e.tag.name === "html") || e.tag.type === "CallExpression") && rt(t.quasi), e.type === "TemplateLiteral" && ((u = e.leadingComments) != null && u.some((o) => De(o) && ["GraphQL", "HTML"].some((i) => o.value === ` ${i} `)) || n.type === "CallExpression" && n.callee.name === "graphql" || !e.leadingComments) && rt(t), e.type === "ChainExpression" && e.expression.type === "TSNonNullExpression" && (t.type = "TSNonNullExpression", t.expression.type = "ChainExpression"), e.type === "TSMappedType" && (delete t.key, delete t.constraint), e.type === "TSEnumDeclaration" && delete t.body;
496
+ }
497
+ tu.ignoredProperties = ai;
498
+ var oi = tu, ct = "string", Me = "array", Dt = "cursor", Ke = "indent", He = "align", yt = "trim", le = "group", Je = "fill", xe = "if-break", ze = "indent-if-break", Qe = "line-suffix", Ye = "line-suffix-boundary", se = "line", qe = "label", _e = "break-parent", nu = /* @__PURE__ */ new Set([Dt, Ke, He, yt, le, Je, xe, ze, Qe, Ye, se, qe, _e]);
499
+ function ii(e) {
500
+ if (typeof e == "string") return ct;
501
+ if (Array.isArray(e)) return Me;
502
+ if (!e) return;
503
+ let { type: t } = e;
504
+ if (nu.has(t)) return t;
505
+ }
506
+ var dt = ii, si = (e) => new Intl.ListFormat("en-US", { type: "disjunction" }).format(e);
507
+ function pi(e) {
508
+ let t = e === null ? "null" : typeof e;
509
+ if (t !== "string" && t !== "object") return `Unexpected doc '${t}',
510
+ Expected it to be 'string' or 'object'.`;
511
+ if (dt(e)) throw new Error("doc is valid.");
512
+ let n = Object.prototype.toString.call(e);
513
+ if (n !== "[object Object]") return `Unexpected doc '${n}'.`;
514
+ let r = si([...nu].map((u) => `'${u}'`));
515
+ return `Unexpected doc.type '${e.type}'.
516
+ Expected it to be ${r}.`;
517
+ }
518
+ var li = class extends Error {
519
+ constructor(t) {
520
+ super(pi(t));
521
+ Ot(this, "name", "InvalidDocError");
522
+ this.doc = t;
523
+ }
524
+ }, vt = li, dr = {};
525
+ function ci(e, t, n, r) {
526
+ let u = [e];
527
+ for (; u.length > 0; ) {
528
+ let a = u.pop();
529
+ if (a === dr) {
530
+ n(u.pop());
531
+ continue;
532
+ }
533
+ n && u.push(a, dr);
534
+ let o = dt(a);
535
+ if (!o) throw new vt(a);
536
+ if ((t == null ? void 0 : t(a)) !== !1) switch (o) {
537
+ case Me:
538
+ case Je: {
539
+ let i = o === Me ? a : a.parts;
540
+ for (let p = i.length, l = p - 1; l >= 0; --l) u.push(i[l]);
541
+ break;
542
+ }
543
+ case xe:
544
+ u.push(a.flatContents, a.breakContents);
545
+ break;
546
+ case le:
547
+ if (r && a.expandedStates) for (let i = a.expandedStates.length, p = i - 1; p >= 0; --p) u.push(a.expandedStates[p]);
548
+ else u.push(a.contents);
549
+ break;
550
+ case He:
551
+ case Ke:
552
+ case ze:
553
+ case qe:
554
+ case Qe:
555
+ u.push(a.contents);
556
+ break;
557
+ case ct:
558
+ case Dt:
559
+ case yt:
560
+ case Ye:
561
+ case se:
562
+ case _e:
563
+ break;
564
+ default:
565
+ throw new vt(a);
566
+ }
567
+ }
568
+ }
569
+ var ru = ci, Di = () => {
570
+ }, yi = Di;
571
+ function g(e) {
572
+ return { type: Ke, contents: e };
573
+ }
574
+ function Te(e, t) {
575
+ return { type: He, contents: t, n: e };
576
+ }
577
+ function m(e, t = {}) {
578
+ return yi(t.expandedStates), { type: le, id: t.id, contents: e, break: !!t.shouldBreak, expandedStates: t.expandedStates };
579
+ }
580
+ function di(e) {
581
+ return Te(Number.NEGATIVE_INFINITY, e);
582
+ }
583
+ function uu(e) {
584
+ return Te(-1, e);
585
+ }
586
+ function Re(e, t) {
587
+ return m(e[0], { ...t, expandedStates: e });
588
+ }
589
+ function Wn(e) {
590
+ return { type: Je, parts: e };
591
+ }
592
+ function P(e, t = "", n = {}) {
593
+ return { type: xe, breakContents: e, flatContents: t, groupId: n.groupId };
594
+ }
595
+ function rn(e, t) {
596
+ return { type: ze, contents: e, groupId: t.groupId, negate: t.negate };
597
+ }
598
+ function mr(e) {
599
+ return { type: Qe, contents: e };
600
+ }
601
+ var ve = { type: Ye }, Se = { type: _e }, au = { type: se, hard: !0 }, mi = { type: se, hard: !0, literal: !0 }, T = { type: se }, E = { type: se, soft: !0 }, A = [au, Se], ou = [mi, Se], fr = { type: Dt };
602
+ function N(e, t) {
603
+ let n = [];
604
+ for (let r = 0; r < t.length; r++) r !== 0 && n.push(e), n.push(t[r]);
605
+ return n;
606
+ }
607
+ function fi(e, t, n) {
608
+ let r = e;
609
+ if (t > 0) {
610
+ for (let u = 0; u < Math.floor(t / n); ++u) r = g(r);
611
+ r = Te(t % n, r), r = Te(Number.NEGATIVE_INFINITY, r);
612
+ }
613
+ return r;
614
+ }
615
+ function wt(e, t) {
616
+ return e ? { type: qe, label: e, contents: t } : t;
617
+ }
618
+ function mt(e, t) {
619
+ if (typeof e == "string") return t(e);
620
+ let n = /* @__PURE__ */ new Map();
621
+ return r(e);
622
+ function r(a) {
623
+ if (n.has(a)) return n.get(a);
624
+ let o = u(a);
625
+ return n.set(a, o), o;
626
+ }
627
+ function u(a) {
628
+ switch (dt(a)) {
629
+ case Me:
630
+ return t(a.map(r));
631
+ case Je:
632
+ return t({ ...a, parts: a.parts.map(r) });
633
+ case xe:
634
+ return t({ ...a, breakContents: r(a.breakContents), flatContents: r(a.flatContents) });
635
+ case le: {
636
+ let { expandedStates: o, contents: i } = a;
637
+ return o ? (o = o.map(r), i = o[0]) : i = r(i), t({ ...a, contents: i, expandedStates: o });
638
+ }
639
+ case He:
640
+ case Ke:
641
+ case ze:
642
+ case qe:
643
+ case Qe:
644
+ return t({ ...a, contents: r(a.contents) });
645
+ case ct:
646
+ case Dt:
647
+ case yt:
648
+ case Ye:
649
+ case se:
650
+ case _e:
651
+ return t(a);
652
+ default:
653
+ throw new vt(a);
654
+ }
655
+ }
656
+ }
657
+ function iu(e, t, n) {
658
+ let r = n, u = !1;
659
+ function a(o) {
660
+ if (u) return !1;
661
+ let i = t(o);
662
+ i !== void 0 && (u = !0, r = i);
663
+ }
664
+ return ru(e, a), r;
665
+ }
666
+ function Ei(e) {
667
+ if (e.type === le && e.break || e.type === se && e.hard || e.type === _e) return !0;
668
+ }
669
+ function te(e) {
670
+ return iu(e, Ei, !1);
671
+ }
672
+ function Er(e) {
673
+ if (e.length > 0) {
674
+ let t = M(!1, e, -1);
675
+ !t.expandedStates && !t.break && (t.break = "propagated");
676
+ }
677
+ return null;
678
+ }
679
+ function Fi(e) {
680
+ let t = /* @__PURE__ */ new Set(), n = [];
681
+ function r(a) {
682
+ if (a.type === _e && Er(n), a.type === le) {
683
+ if (n.push(a), t.has(a)) return !1;
684
+ t.add(a);
685
+ }
686
+ }
687
+ function u(a) {
688
+ a.type === le && n.pop().break && Er(n);
689
+ }
690
+ ru(e, r, u, !0);
691
+ }
692
+ function Ai(e) {
693
+ return e.type === se && !e.hard ? e.soft ? "" : " " : e.type === xe ? e.flatContents : e;
694
+ }
695
+ function hn(e) {
696
+ return mt(e, Ai);
697
+ }
698
+ function gi(e) {
699
+ switch (dt(e)) {
700
+ case Je:
701
+ if (e.parts.every((t) => t === "")) return "";
702
+ break;
703
+ case le:
704
+ if (!e.contents && !e.id && !e.break && !e.expandedStates) return "";
705
+ if (e.contents.type === le && e.contents.id === e.id && e.contents.break === e.break && e.contents.expandedStates === e.expandedStates) return e.contents;
706
+ break;
707
+ case He:
708
+ case Ke:
709
+ case ze:
710
+ case Qe:
711
+ if (!e.contents) return "";
712
+ break;
713
+ case xe:
714
+ if (!e.flatContents && !e.breakContents) return "";
715
+ break;
716
+ case Me: {
717
+ let t = [];
718
+ for (let n of e) {
719
+ if (!n) continue;
720
+ let [r, ...u] = Array.isArray(n) ? n : [n];
721
+ typeof r == "string" && typeof M(!1, t, -1) == "string" ? t[t.length - 1] += r : t.push(r), t.push(...u);
722
+ }
723
+ return t.length === 0 ? "" : t.length === 1 ? t[0] : t;
724
+ }
725
+ case ct:
726
+ case Dt:
727
+ case yt:
728
+ case Ye:
729
+ case se:
730
+ case qe:
731
+ case _e:
732
+ break;
733
+ default:
734
+ throw new vt(e);
735
+ }
736
+ return e;
737
+ }
738
+ function Un(e) {
739
+ return mt(e, (t) => gi(t));
740
+ }
741
+ function Ge(e, t = ou) {
742
+ return mt(e, (n) => typeof n == "string" ? N(t, n.split(`
743
+ `)) : n);
744
+ }
745
+ function Ci(e) {
746
+ if (e.type === se) return !0;
747
+ }
748
+ function hi(e) {
749
+ return iu(e, Ci, !1);
750
+ }
751
+ function xn(e, t) {
752
+ return e.type === qe ? { ...e, contents: t(e.contents) } : t(e);
753
+ }
754
+ function xi(e) {
755
+ let t = `*${e.value}*`.split(`
756
+ `);
757
+ return t.length > 1 && t.every((n) => n.trimStart()[0] === "*");
758
+ }
759
+ var Ti = xi;
760
+ function Si(e, t) {
761
+ let n = e.node;
762
+ if (Zt(n)) return t.originalText.slice($(n), I(n)).trimEnd();
763
+ if (De(n)) return Ti(n) ? bi(n) : ["/*", Ge(n.value), "*/"];
764
+ throw new Error("Not a comment: " + JSON.stringify(n));
765
+ }
766
+ function bi(e) {
767
+ let t = e.value.split(`
768
+ `);
769
+ return ["/*", N(A, t.map((n, r) => r === 0 ? n.trimEnd() : " " + (r < t.length - 1 ? n.trim() : n.trimStart()))), "*/"];
770
+ }
771
+ var su = {};
772
+ Qt(su, { endOfLine: () => ji, ownLine: () => Ii, remaining: () => Li });
773
+ function Bi(e) {
774
+ let t = e.type || e.kind || "(unknown type)", n = String(e.name || e.id && (typeof e.id == "object" ? e.id.name : e.id) || e.key && (typeof e.key == "object" ? e.key.name : e.key) || e.value && (typeof e.value == "object" ? "" : String(e.value)) || e.operator || "");
775
+ return n.length > 20 && (n = n.slice(0, 19) + "…"), t + (n ? " " + n : "");
776
+ }
777
+ function Gn(e, t) {
778
+ (e.comments ?? (e.comments = [])).push(t), t.printed = !1, t.nodeDescription = Bi(e);
779
+ }
780
+ function Y(e, t) {
781
+ t.leading = !0, t.trailing = !1, Gn(e, t);
782
+ }
783
+ function ce(e, t, n) {
784
+ t.leading = !1, t.trailing = !1, n && (t.marker = n), Gn(e, t);
785
+ }
786
+ function R(e, t) {
787
+ t.leading = !1, t.trailing = !0, Gn(e, t);
788
+ }
789
+ function vi(e, t) {
790
+ let n = null, r = t;
791
+ for (; r !== n; ) n = r, r = it(e, r), r = Mn(e, r), r = On(e, r), r = st(e, r);
792
+ return r;
793
+ }
794
+ var Nt = vi;
795
+ function ki(e, t) {
796
+ let n = Nt(e, t);
797
+ return n === !1 ? "" : e.charAt(n);
798
+ }
799
+ var ge = ki;
800
+ function Pi(e, t, n) {
801
+ for (let r = t; r < n; ++r) if (e.charAt(r) === `
802
+ `) return !0;
803
+ return !1;
804
+ }
805
+ var Oe = Pi;
806
+ function wi(e) {
807
+ return De(e) && e.value[0] === "*" && /@(?:type|satisfies)\b/u.test(e.value);
808
+ }
809
+ var Ni = wi;
810
+ function Ii(e) {
811
+ return [fu, lu, yu, Gi, Oi, Vn, Kn, pu, cu, zi, Ki, zn, mu, Qi, Du, du, Hn, Ji, as].some((t) => t(e));
812
+ }
813
+ function ji(e) {
814
+ return [Mi, yu, lu, mu, Vn, Kn, pu, cu, du, Vi, Hi, zn, es, Hn, rs, us].some((t) => t(e));
815
+ }
816
+ function Li(e) {
817
+ return [fu, Vn, Kn, qi, Ui, Du, zn, Wi, Ri, ns, Hn, ts].some((t) => t(e));
818
+ }
819
+ function Ze(e, t) {
820
+ let n = (e.body || e.properties).find(({ type: r }) => r !== "EmptyStatement");
821
+ n ? Y(n, t) : ce(e, t);
822
+ }
823
+ function Tn(e, t) {
824
+ e.type === "BlockStatement" ? Ze(e, t) : Y(e, t);
825
+ }
826
+ function Mi({ comment: e, followingNode: t }) {
827
+ return t && Ni(e) ? (Y(t, e), !0) : !1;
828
+ }
829
+ function Vn({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r, text: u }) {
830
+ if ((n == null ? void 0 : n.type) !== "IfStatement" || !r) return !1;
831
+ if (ge(u, I(e)) === ")") return R(t, e), !0;
832
+ if (t === n.consequent && r === n.alternate) {
833
+ if (t.type === "BlockStatement") R(t, e);
834
+ else {
835
+ let a = Zt(e) || e.loc.start.line === e.loc.end.line, o = e.loc.start.line === t.loc.start.line;
836
+ a && o ? R(t, e) : ce(n, e);
837
+ }
838
+ return !0;
839
+ }
840
+ return r.type === "BlockStatement" ? (Ze(r, e), !0) : r.type === "IfStatement" ? (Tn(r.consequent, e), !0) : n.consequent === r ? (Y(r, e), !0) : !1;
841
+ }
842
+ function Kn({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r, text: u }) {
843
+ return (n == null ? void 0 : n.type) !== "WhileStatement" || !r ? !1 : ge(u, I(e)) === ")" ? (R(t, e), !0) : r.type === "BlockStatement" ? (Ze(r, e), !0) : n.body === r ? (Y(r, e), !0) : !1;
844
+ }
845
+ function pu({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r }) {
846
+ return (n == null ? void 0 : n.type) !== "TryStatement" && (n == null ? void 0 : n.type) !== "CatchClause" || !r ? !1 : n.type === "CatchClause" && t ? (R(t, e), !0) : r.type === "BlockStatement" ? (Ze(r, e), !0) : r.type === "TryStatement" ? (Tn(r.finalizer, e), !0) : r.type === "CatchClause" ? (Tn(r.body, e), !0) : !1;
847
+ }
848
+ function Oi({ comment: e, enclosingNode: t, followingNode: n }) {
849
+ return W(t) && (n == null ? void 0 : n.type) === "Identifier" ? (Y(t, e), !0) : !1;
850
+ }
851
+ function Ji({ comment: e, enclosingNode: t, followingNode: n, options: r }) {
852
+ return !r.experimentalTernaries || !((t == null ? void 0 : t.type) === "ConditionalExpression" || (t == null ? void 0 : t.type) === "ConditionalTypeAnnotation" || (t == null ? void 0 : t.type) === "TSConditionalType") ? !1 : (n == null ? void 0 : n.type) === "ConditionalExpression" || (n == null ? void 0 : n.type) === "ConditionalTypeAnnotation" || (n == null ? void 0 : n.type) === "TSConditionalType" ? (ce(t, e), !0) : !1;
853
+ }
854
+ function lu({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r, text: u, options: a }) {
855
+ let o = t && !Oe(u, I(t), $(e));
856
+ return (!t || !o) && ((n == null ? void 0 : n.type) === "ConditionalExpression" || (n == null ? void 0 : n.type) === "ConditionalTypeAnnotation" || (n == null ? void 0 : n.type) === "TSConditionalType") && r ? a.experimentalTernaries && n.alternate === r && !(De(e) && !Oe(a.originalText, $(e), I(e))) ? (ce(n, e), !0) : (Y(r, e), !0) : !1;
857
+ }
858
+ function qi({ comment: e, precedingNode: t, enclosingNode: n }) {
859
+ return we(n) && n.shorthand && n.key === t && n.value.type === "AssignmentPattern" ? (R(n.value.left, e), !0) : !1;
860
+ }
861
+ var _i = /* @__PURE__ */ new Set(["ClassDeclaration", "ClassExpression", "DeclareClass", "DeclareInterface", "InterfaceDeclaration", "TSInterfaceDeclaration"]);
862
+ function cu({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r }) {
863
+ if (_i.has(n == null ? void 0 : n.type)) {
864
+ if (O(n.decorators) && (r == null ? void 0 : r.type) !== "Decorator") return R(M(!1, n.decorators, -1), e), !0;
865
+ if (n.body && r === n.body) return Ze(n.body, e), !0;
866
+ if (r) {
867
+ if (n.superClass && r === n.superClass && t && (t === n.id || t === n.typeParameters)) return R(t, e), !0;
868
+ for (let u of ["implements", "extends", "mixins"]) if (n[u] && r === n[u][0]) return t && (t === n.id || t === n.typeParameters || t === n.superClass) ? R(t, e) : ce(n, e, u), !0;
869
+ }
870
+ }
871
+ return !1;
872
+ }
873
+ var Xi = /* @__PURE__ */ new Set(["ClassMethod", "ClassProperty", "PropertyDefinition", "TSAbstractPropertyDefinition", "TSAbstractMethodDefinition", "TSDeclareMethod", "MethodDefinition", "ClassAccessorProperty", "AccessorProperty", "TSAbstractAccessorProperty"]);
874
+ function Du({ comment: e, precedingNode: t, enclosingNode: n, text: r }) {
875
+ return n && t && ge(r, I(e)) === "(" && (n.type === "Property" || n.type === "TSDeclareMethod" || n.type === "TSAbstractMethodDefinition") && t.type === "Identifier" && n.key === t && ge(r, I(t)) !== ":" || (t == null ? void 0 : t.type) === "Decorator" && Xi.has(n == null ? void 0 : n.type) ? (R(t, e), !0) : !1;
876
+ }
877
+ var $i = /* @__PURE__ */ new Set(["FunctionDeclaration", "FunctionExpression", "ClassMethod", "MethodDefinition", "ObjectMethod"]);
878
+ function Ri({ comment: e, precedingNode: t, enclosingNode: n, text: r }) {
879
+ return ge(r, I(e)) !== "(" ? !1 : t && $i.has(n == null ? void 0 : n.type) ? (R(t, e), !0) : !1;
880
+ }
881
+ function Wi({ comment: e, enclosingNode: t, text: n }) {
882
+ if ((t == null ? void 0 : t.type) !== "ArrowFunctionExpression") return !1;
883
+ let r = Nt(n, I(e));
884
+ return r !== !1 && n.slice(r, r + 2) === "=>" ? (ce(t, e), !0) : !1;
885
+ }
886
+ function Ui({ comment: e, enclosingNode: t, text: n }) {
887
+ return ge(n, I(e)) !== ")" ? !1 : t && (Eu(t) && Z(t).length === 0 || lt(t) && ye(t).length === 0) ? (ce(t, e), !0) : ((t == null ? void 0 : t.type) === "MethodDefinition" || (t == null ? void 0 : t.type) === "TSAbstractMethodDefinition") && Z(t.value).length === 0 ? (ce(t.value, e), !0) : !1;
888
+ }
889
+ function Gi({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r, text: u }) {
890
+ return (t == null ? void 0 : t.type) === "ComponentTypeParameter" && ((n == null ? void 0 : n.type) === "DeclareComponent" || (n == null ? void 0 : n.type) === "ComponentTypeAnnotation") && (r == null ? void 0 : r.type) !== "ComponentTypeParameter" || ((t == null ? void 0 : t.type) === "ComponentParameter" || (t == null ? void 0 : t.type) === "RestElement") && (n == null ? void 0 : n.type) === "ComponentDeclaration" && ge(u, I(e)) === ")" ? (R(t, e), !0) : !1;
891
+ }
892
+ function yu({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r, text: u }) {
893
+ return (t == null ? void 0 : t.type) === "FunctionTypeParam" && (n == null ? void 0 : n.type) === "FunctionTypeAnnotation" && (r == null ? void 0 : r.type) !== "FunctionTypeParam" || ((t == null ? void 0 : t.type) === "Identifier" || (t == null ? void 0 : t.type) === "AssignmentPattern" || (t == null ? void 0 : t.type) === "ObjectPattern" || (t == null ? void 0 : t.type) === "ArrayPattern" || (t == null ? void 0 : t.type) === "RestElement" || (t == null ? void 0 : t.type) === "TSParameterProperty") && Eu(n) && ge(u, I(e)) === ")" ? (R(t, e), !0) : !De(e) && ((n == null ? void 0 : n.type) === "FunctionDeclaration" || (n == null ? void 0 : n.type) === "FunctionExpression" || (n == null ? void 0 : n.type) === "ObjectMethod") && (r == null ? void 0 : r.type) === "BlockStatement" && n.body === r && Nt(u, I(e)) === $(r) ? (Ze(r, e), !0) : !1;
894
+ }
895
+ function du({ comment: e, enclosingNode: t }) {
896
+ return (t == null ? void 0 : t.type) === "LabeledStatement" ? (Y(t, e), !0) : !1;
897
+ }
898
+ function Hn({ comment: e, enclosingNode: t }) {
899
+ return ((t == null ? void 0 : t.type) === "ContinueStatement" || (t == null ? void 0 : t.type) === "BreakStatement") && !t.label ? (R(t, e), !0) : !1;
900
+ }
901
+ function Vi({ comment: e, precedingNode: t, enclosingNode: n }) {
902
+ return L(n) && t && n.callee === t && n.arguments.length > 0 ? (Y(n.arguments[0], e), !0) : !1;
903
+ }
904
+ function Ki({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r }) {
905
+ return Ue(n) ? (Kt(e) && (r.prettierIgnore = !0, e.unignore = !0), t ? (R(t, e), !0) : !1) : (Ue(r) && Kt(e) && (r.types[0].prettierIgnore = !0, e.unignore = !0), !1);
906
+ }
907
+ function Hi({ comment: e, enclosingNode: t }) {
908
+ return we(t) ? (Y(t, e), !0) : !1;
909
+ }
910
+ function zn({ comment: e, enclosingNode: t, ast: n, isLastComment: r }) {
911
+ var u;
912
+ return ((u = n == null ? void 0 : n.body) == null ? void 0 : u.length) === 0 ? (r ? ce(n, e) : Y(n, e), !0) : (t == null ? void 0 : t.type) === "Program" && t.body.length === 0 && !O(t.directives) ? (r ? ce(t, e) : Y(t, e), !0) : !1;
913
+ }
914
+ function zi({ comment: e, enclosingNode: t }) {
915
+ return (t == null ? void 0 : t.type) === "ForInStatement" || (t == null ? void 0 : t.type) === "ForOfStatement" ? (Y(t, e), !0) : !1;
916
+ }
917
+ function mu({ comment: e, precedingNode: t, enclosingNode: n, text: r }) {
918
+ if ((n == null ? void 0 : n.type) === "ImportSpecifier" || (n == null ? void 0 : n.type) === "ExportSpecifier") return Y(n, e), !0;
919
+ let u = (t == null ? void 0 : t.type) === "ImportSpecifier" && (n == null ? void 0 : n.type) === "ImportDeclaration", a = (t == null ? void 0 : t.type) === "ExportSpecifier" && (n == null ? void 0 : n.type) === "ExportNamedDeclaration";
920
+ return (u || a) && ie(r, I(e)) ? (R(t, e), !0) : !1;
921
+ }
922
+ function Qi({ comment: e, enclosingNode: t }) {
923
+ return (t == null ? void 0 : t.type) === "AssignmentPattern" ? (Y(t, e), !0) : !1;
924
+ }
925
+ var Yi = /* @__PURE__ */ new Set(["VariableDeclarator", "AssignmentExpression", "TypeAlias", "TSTypeAliasDeclaration"]), Zi = /* @__PURE__ */ new Set(["ObjectExpression", "RecordExpression", "ArrayExpression", "TupleExpression", "TemplateLiteral", "TaggedTemplateExpression", "ObjectTypeAnnotation", "TSTypeLiteral"]);
926
+ function es({ comment: e, enclosingNode: t, followingNode: n }) {
927
+ return Yi.has(t == null ? void 0 : t.type) && n && (Zi.has(n.type) || De(e)) ? (Y(n, e), !0) : !1;
928
+ }
929
+ function ts({ comment: e, enclosingNode: t, followingNode: n, text: r }) {
930
+ return !n && ((t == null ? void 0 : t.type) === "TSMethodSignature" || (t == null ? void 0 : t.type) === "TSDeclareFunction" || (t == null ? void 0 : t.type) === "TSAbstractMethodDefinition") && ge(r, I(e)) === ";" ? (R(t, e), !0) : !1;
931
+ }
932
+ function fu({ comment: e, enclosingNode: t, followingNode: n }) {
933
+ if (Kt(e) && (t == null ? void 0 : t.type) === "TSMappedType" && (n == null ? void 0 : n.type) === "TSTypeParameter" && n.constraint) return t.prettierIgnore = !0, e.unignore = !0, !0;
934
+ }
935
+ function ns({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r }) {
936
+ return (n == null ? void 0 : n.type) !== "TSMappedType" ? !1 : (r == null ? void 0 : r.type) === "TSTypeParameter" && r.name ? (Y(r.name, e), !0) : (t == null ? void 0 : t.type) === "TSTypeParameter" && t.constraint ? (R(t.constraint, e), !0) : !1;
937
+ }
938
+ function rs({ comment: e, enclosingNode: t, followingNode: n }) {
939
+ return !t || t.type !== "SwitchCase" || t.test || !n || n !== t.consequent[0] ? !1 : (n.type === "BlockStatement" && Zt(e) ? Ze(n, e) : ce(t, e), !0);
940
+ }
941
+ function us({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r }) {
942
+ return Ue(t) && ((n.type === "TSArrayType" || n.type === "ArrayTypeAnnotation") && !r || eu(n)) ? (R(M(!1, t.types, -1), e), !0) : !1;
943
+ }
944
+ function as({ comment: e, enclosingNode: t, precedingNode: n, followingNode: r }) {
945
+ if (((t == null ? void 0 : t.type) === "ObjectPattern" || (t == null ? void 0 : t.type) === "ArrayPattern") && (r == null ? void 0 : r.type) === "TSTypeAnnotation") return n ? R(n, e) : ce(t, e), !0;
946
+ }
947
+ var Eu = q(["ArrowFunctionExpression", "FunctionExpression", "FunctionDeclaration", "ObjectMethod", "ClassMethod", "TSDeclareFunction", "TSCallSignatureDeclaration", "TSConstructSignatureDeclaration", "TSMethodSignature", "TSConstructorType", "TSFunctionType", "TSDeclareMethod"]), os = /* @__PURE__ */ new Set(["EmptyStatement", "TemplateElement", "Import", "TSEmptyBodyFunctionExpression", "ChainExpression"]);
948
+ function is(e) {
949
+ return !os.has(e.type);
950
+ }
951
+ function ss(e, t) {
952
+ var n;
953
+ if ((t.parser === "typescript" || t.parser === "flow" || t.parser === "acorn" || t.parser === "espree" || t.parser === "meriyah" || t.parser === "__babel_estree") && e.type === "MethodDefinition" && ((n = e.value) == null ? void 0 : n.type) === "FunctionExpression" && Z(e.value).length === 0 && !e.value.returnType && !O(e.value.typeParameters) && e.value.body) return [...e.decorators || [], e.key, e.value.body];
954
+ }
955
+ function Fu(e) {
956
+ let { node: t, parent: n } = e;
957
+ return (V(t) || n && (n.type === "JSXSpreadAttribute" || n.type === "JSXSpreadChild" || Ue(n) || (n.type === "ClassDeclaration" || n.type === "ClassExpression") && n.superClass === t)) && (!nn(t) || Ue(n));
958
+ }
959
+ function ps(e, { parser: t }) {
960
+ if (t === "flow" || t === "babel-flow") return e = H(!1, e, /[\s(]/gu, ""), e === "" || e === "/*" || e === "/*::";
961
+ }
962
+ function ls(e) {
963
+ switch (e) {
964
+ case "cr":
965
+ return "\r";
966
+ case "crlf":
967
+ return `\r
968
+ `;
969
+ default:
970
+ return `
971
+ `;
972
+ }
973
+ }
974
+ var ae = Symbol("MODE_BREAK"), Ce = Symbol("MODE_FLAT"), Tt = Symbol("cursor");
975
+ function Au() {
976
+ return { value: "", length: 0, queue: [] };
977
+ }
978
+ function cs(e, t) {
979
+ return Sn(e, { type: "indent" }, t);
980
+ }
981
+ function Ds(e, t, n) {
982
+ return t === Number.NEGATIVE_INFINITY ? e.root || Au() : t < 0 ? Sn(e, { type: "dedent" }, n) : t ? t.type === "root" ? { ...e, root: e } : Sn(e, { type: typeof t == "string" ? "stringAlign" : "numberAlign", n: t }, n) : e;
983
+ }
984
+ function Sn(e, t, n) {
985
+ let r = t.type === "dedent" ? e.queue.slice(0, -1) : [...e.queue, t], u = "", a = 0, o = 0, i = 0;
986
+ for (let D of r) switch (D.type) {
987
+ case "indent":
988
+ d(), n.useTabs ? p(1) : l(n.tabWidth);
989
+ break;
990
+ case "stringAlign":
991
+ d(), u += D.n, a += D.n.length;
992
+ break;
993
+ case "numberAlign":
994
+ o += 1, i += D.n;
995
+ break;
996
+ default:
997
+ throw new Error(`Unexpected type '${D.type}'`);
998
+ }
999
+ return c(), { ...e, value: u, length: a, queue: r };
1000
+ function p(D) {
1001
+ u += " ".repeat(D), a += n.tabWidth * D;
1002
+ }
1003
+ function l(D) {
1004
+ u += " ".repeat(D), a += D;
1005
+ }
1006
+ function d() {
1007
+ n.useTabs ? y() : c();
1008
+ }
1009
+ function y() {
1010
+ o > 0 && p(o), s();
1011
+ }
1012
+ function c() {
1013
+ i > 0 && l(i), s();
1014
+ }
1015
+ function s() {
1016
+ o = 0, i = 0;
1017
+ }
1018
+ }
1019
+ function bn(e) {
1020
+ let t = 0, n = 0, r = e.length;
1021
+ e: for (; r--; ) {
1022
+ let u = e[r];
1023
+ if (u === Tt) {
1024
+ n++;
1025
+ continue;
1026
+ }
1027
+ for (let a = u.length - 1; a >= 0; a--) {
1028
+ let o = u[a];
1029
+ if (o === " " || o === " ") t++;
1030
+ else {
1031
+ e[r] = u.slice(0, a + 1);
1032
+ break e;
1033
+ }
1034
+ }
1035
+ }
1036
+ if (t > 0 || n > 0) for (e.length = r + 1; n-- > 0; ) e.push(Tt);
1037
+ return t;
1038
+ }
1039
+ function _t(e, t, n, r, u, a) {
1040
+ if (n === Number.POSITIVE_INFINITY) return !0;
1041
+ let o = t.length, i = [e], p = [];
1042
+ for (; n >= 0; ) {
1043
+ if (i.length === 0) {
1044
+ if (o === 0) return !0;
1045
+ i.push(t[--o]);
1046
+ continue;
1047
+ }
1048
+ let { mode: l, doc: d } = i.pop(), y = dt(d);
1049
+ switch (y) {
1050
+ case ct:
1051
+ p.push(d), n -= ot(d);
1052
+ break;
1053
+ case Me:
1054
+ case Je: {
1055
+ let c = y === Me ? d : d.parts;
1056
+ for (let s = c.length - 1; s >= 0; s--) i.push({ mode: l, doc: c[s] });
1057
+ break;
1058
+ }
1059
+ case Ke:
1060
+ case He:
1061
+ case ze:
1062
+ case qe:
1063
+ i.push({ mode: l, doc: d.contents });
1064
+ break;
1065
+ case yt:
1066
+ n += bn(p);
1067
+ break;
1068
+ case le: {
1069
+ if (a && d.break) return !1;
1070
+ let c = d.break ? ae : l, s = d.expandedStates && c === ae ? M(!1, d.expandedStates, -1) : d.contents;
1071
+ i.push({ mode: c, doc: s });
1072
+ break;
1073
+ }
1074
+ case xe: {
1075
+ let c = (d.groupId ? u[d.groupId] || Ce : l) === ae ? d.breakContents : d.flatContents;
1076
+ c && i.push({ mode: l, doc: c });
1077
+ break;
1078
+ }
1079
+ case se:
1080
+ if (l === ae || d.hard) return !0;
1081
+ d.soft || (p.push(" "), n--);
1082
+ break;
1083
+ case Qe:
1084
+ r = !0;
1085
+ break;
1086
+ case Ye:
1087
+ if (r) return !1;
1088
+ break;
1089
+ }
1090
+ }
1091
+ return !1;
1092
+ }
1093
+ function gu(e, t) {
1094
+ let n = {}, r = t.printWidth, u = ls(t.endOfLine), a = 0, o = [{ ind: Au(), mode: ae, doc: e }], i = [], p = !1, l = [], d = 0;
1095
+ for (Fi(e); o.length > 0; ) {
1096
+ let { ind: c, mode: s, doc: D } = o.pop();
1097
+ switch (dt(D)) {
1098
+ case ct: {
1099
+ let f = u !== `
1100
+ ` ? H(!1, D, `
1101
+ `, u) : D;
1102
+ i.push(f), o.length > 0 && (a += ot(f));
1103
+ break;
1104
+ }
1105
+ case Me:
1106
+ for (let f = D.length - 1; f >= 0; f--) o.push({ ind: c, mode: s, doc: D[f] });
1107
+ break;
1108
+ case Dt:
1109
+ if (d >= 2) throw new Error("There are too many 'cursor' in doc.");
1110
+ i.push(Tt), d++;
1111
+ break;
1112
+ case Ke:
1113
+ o.push({ ind: cs(c, t), mode: s, doc: D.contents });
1114
+ break;
1115
+ case He:
1116
+ o.push({ ind: Ds(c, D.n, t), mode: s, doc: D.contents });
1117
+ break;
1118
+ case yt:
1119
+ a -= bn(i);
1120
+ break;
1121
+ case le:
1122
+ switch (s) {
1123
+ case Ce:
1124
+ if (!p) {
1125
+ o.push({ ind: c, mode: D.break ? ae : Ce, doc: D.contents });
1126
+ break;
1127
+ }
1128
+ case ae: {
1129
+ p = !1;
1130
+ let f = { ind: c, mode: Ce, doc: D.contents }, C = r - a, F = l.length > 0;
1131
+ if (!D.break && _t(f, o, C, F, n)) o.push(f);
1132
+ else if (D.expandedStates) {
1133
+ let B = M(!1, D.expandedStates, -1);
1134
+ if (D.break) {
1135
+ o.push({ ind: c, mode: ae, doc: B });
1136
+ break;
1137
+ } else for (let b = 1; b < D.expandedStates.length + 1; b++) if (b >= D.expandedStates.length) {
1138
+ o.push({ ind: c, mode: ae, doc: B });
1139
+ break;
1140
+ } else {
1141
+ let w = D.expandedStates[b], k = { ind: c, mode: Ce, doc: w };
1142
+ if (_t(k, o, C, F, n)) {
1143
+ o.push(k);
1144
+ break;
1145
+ }
1146
+ }
1147
+ } else o.push({ ind: c, mode: ae, doc: D.contents });
1148
+ break;
1149
+ }
1150
+ }
1151
+ D.id && (n[D.id] = M(!1, o, -1).mode);
1152
+ break;
1153
+ case Je: {
1154
+ let f = r - a, { parts: C } = D;
1155
+ if (C.length === 0) break;
1156
+ let [F, B] = C, b = { ind: c, mode: Ce, doc: F }, w = { ind: c, mode: ae, doc: F }, k = _t(b, [], f, l.length > 0, n, !0);
1157
+ if (C.length === 1) {
1158
+ k ? o.push(b) : o.push(w);
1159
+ break;
1160
+ }
1161
+ let h = { ind: c, mode: Ce, doc: B }, j = { ind: c, mode: ae, doc: B };
1162
+ if (C.length === 2) {
1163
+ k ? o.push(h, b) : o.push(j, w);
1164
+ break;
1165
+ }
1166
+ C.splice(0, 2);
1167
+ let ue = { ind: c, mode: s, doc: Wn(C) }, _ = C[0];
1168
+ _t({ ind: c, mode: Ce, doc: [F, B, _] }, [], f, l.length > 0, n, !0) ? o.push(ue, h, b) : k ? o.push(ue, j, b) : o.push(ue, j, w);
1169
+ break;
1170
+ }
1171
+ case xe:
1172
+ case ze: {
1173
+ let f = D.groupId ? n[D.groupId] : s;
1174
+ if (f === ae) {
1175
+ let C = D.type === xe ? D.breakContents : D.negate ? D.contents : g(D.contents);
1176
+ C && o.push({ ind: c, mode: s, doc: C });
1177
+ }
1178
+ if (f === Ce) {
1179
+ let C = D.type === xe ? D.flatContents : D.negate ? g(D.contents) : D.contents;
1180
+ C && o.push({ ind: c, mode: s, doc: C });
1181
+ }
1182
+ break;
1183
+ }
1184
+ case Qe:
1185
+ l.push({ ind: c, mode: s, doc: D.contents });
1186
+ break;
1187
+ case Ye:
1188
+ l.length > 0 && o.push({ ind: c, mode: s, doc: au });
1189
+ break;
1190
+ case se:
1191
+ switch (s) {
1192
+ case Ce:
1193
+ if (D.hard) p = !0;
1194
+ else {
1195
+ D.soft || (i.push(" "), a += 1);
1196
+ break;
1197
+ }
1198
+ case ae:
1199
+ if (l.length > 0) {
1200
+ o.push({ ind: c, mode: s, doc: D }, ...l.reverse()), l.length = 0;
1201
+ break;
1202
+ }
1203
+ D.literal ? c.root ? (i.push(u, c.root.value), a = c.root.length) : (i.push(u), a = 0) : (a -= bn(i), i.push(u + c.value), a = c.length);
1204
+ break;
1205
+ }
1206
+ break;
1207
+ case qe:
1208
+ o.push({ ind: c, mode: s, doc: D.contents });
1209
+ break;
1210
+ case _e:
1211
+ break;
1212
+ default:
1213
+ throw new vt(D);
1214
+ }
1215
+ o.length === 0 && l.length > 0 && (o.push(...l.reverse()), l.length = 0);
1216
+ }
1217
+ let y = i.indexOf(Tt);
1218
+ if (y !== -1) {
1219
+ let c = i.indexOf(Tt, y + 1), s = i.slice(0, y).join(""), D = i.slice(y + 1, c).join(""), f = i.slice(c + 1).join("");
1220
+ return { formatted: s + D + f, cursorNodeStart: s.length, cursorNodeText: D };
1221
+ }
1222
+ return { formatted: i.join("") };
1223
+ }
1224
+ function ys(e, t, n = 0) {
1225
+ let r = 0;
1226
+ for (let u = n; u < e.length; ++u) e[u] === " " ? r = r + t - r % t : r++;
1227
+ return r;
1228
+ }
1229
+ var ds = ys;
1230
+ function ms(e, t) {
1231
+ let n = e.lastIndexOf(`
1232
+ `);
1233
+ return n === -1 ? 0 : ds(e.slice(n + 1).match(/^[\t ]*/u)[0], t);
1234
+ }
1235
+ var fs = ms;
1236
+ function Cu(e, t, n) {
1237
+ let { node: r } = e;
1238
+ if (r.type === "TemplateLiteral" && gs(e)) {
1239
+ let p = Fs(e, n, t);
1240
+ if (p) return p;
1241
+ }
1242
+ let u = "expressions";
1243
+ r.type === "TSTemplateLiteralType" && (u = "types");
1244
+ let a = [], o = e.map(t, u);
1245
+ a.push(ve, "`");
1246
+ let i = 0;
1247
+ return e.each(({ index: p, node: l }) => {
1248
+ if (a.push(t()), l.tail) return;
1249
+ let { tabWidth: d } = n, y = l.value.raw, c = y.includes(`
1250
+ `) ? fs(y, d) : i;
1251
+ i = c;
1252
+ let s = o[p], D = r[u][p], f = Oe(n.originalText, I(l), $(r.quasis[p + 1]));
1253
+ if (!f) {
1254
+ let F = gu(s, { ...n, printWidth: Number.POSITIVE_INFINITY }).formatted;
1255
+ F.includes(`
1256
+ `) ? f = !0 : s = F;
1257
+ }
1258
+ f && (x(D) || D.type === "Identifier" || W(D) || D.type === "ConditionalExpression" || D.type === "SequenceExpression" || he(D) || Be(D)) && (s = [g([E, s]), E]);
1259
+ let C = c === 0 && y.endsWith(`
1260
+ `) ? Te(Number.NEGATIVE_INFINITY, s) : fi(s, c, d);
1261
+ a.push(m(["${", C, ve, "}"]));
1262
+ }, "quasis"), a.push("`"), a;
1263
+ }
1264
+ function Es(e, t) {
1265
+ let n = t("quasi");
1266
+ return wt(n.label && { tagged: !0, ...n.label }, [t("tag"), t(e.node.typeArguments ? "typeArguments" : "typeParameters"), ve, n]);
1267
+ }
1268
+ function Fs(e, t, n) {
1269
+ let { node: r } = e, u = r.quasis[0].value.raw.trim().split(/\s*\|\s*/u);
1270
+ if (u.length > 1 || u.some((a) => a.length > 0)) {
1271
+ t.__inJestEach = !0;
1272
+ let a = e.map(n, "expressions");
1273
+ t.__inJestEach = !1;
1274
+ let o = [], i = a.map((c) => "${" + gu(c, { ...t, printWidth: Number.POSITIVE_INFINITY, endOfLine: "lf" }).formatted + "}"), p = [{ hasLineBreak: !1, cells: [] }];
1275
+ for (let c = 1; c < r.quasis.length; c++) {
1276
+ let s = M(!1, p, -1), D = i[c - 1];
1277
+ s.cells.push(D), D.includes(`
1278
+ `) && (s.hasLineBreak = !0), r.quasis[c].value.raw.includes(`
1279
+ `) && p.push({ hasLineBreak: !1, cells: [] });
1280
+ }
1281
+ let l = Math.max(u.length, ...p.map((c) => c.cells.length)), d = Array.from({ length: l }).fill(0), y = [{ cells: u }, ...p.filter((c) => c.cells.length > 0)];
1282
+ for (let { cells: c } of y.filter((s) => !s.hasLineBreak)) for (let [s, D] of c.entries()) d[s] = Math.max(d[s], ot(D));
1283
+ return o.push(ve, "`", g([A, N(A, y.map((c) => N(" | ", c.cells.map((s, D) => c.hasLineBreak ? s : s + " ".repeat(d[D] - ot(s))))))]), A, "`"), o;
1284
+ }
1285
+ }
1286
+ function As(e, t) {
1287
+ let { node: n } = e, r = t();
1288
+ return x(n) && (r = m([g([E, r]), E])), ["${", r, ve, "}"];
1289
+ }
1290
+ function Qn(e, t) {
1291
+ return e.map((n) => As(n, t), "expressions");
1292
+ }
1293
+ function hu(e, t) {
1294
+ return mt(e, (n) => typeof n == "string" ? t ? H(!1, n, /(\\*)`/gu, "$1$1\\`") : xu(n) : n);
1295
+ }
1296
+ function xu(e) {
1297
+ return H(!1, e, /([\\`]|\$\{)/gu, String.raw`\$1`);
1298
+ }
1299
+ function gs({ node: e, parent: t }) {
1300
+ let n = /^[fx]?(?:describe|it|test)$/u;
1301
+ return t.type === "TaggedTemplateExpression" && t.quasi === e && t.tag.type === "MemberExpression" && t.tag.property.type === "Identifier" && t.tag.property.name === "each" && (t.tag.object.type === "Identifier" && n.test(t.tag.object.name) || t.tag.object.type === "MemberExpression" && t.tag.object.property.type === "Identifier" && (t.tag.object.property.name === "only" || t.tag.object.property.name === "skip") && t.tag.object.object.type === "Identifier" && n.test(t.tag.object.object.name));
1302
+ }
1303
+ var Bn = [(e, t) => e.type === "ObjectExpression" && t === "properties", (e, t) => e.type === "CallExpression" && e.callee.type === "Identifier" && e.callee.name === "Component" && t === "arguments", (e, t) => e.type === "Decorator" && t === "expression"];
1304
+ function Cs(e) {
1305
+ let t = (r) => r.type === "TemplateLiteral", n = (r, u) => we(r) && !r.computed && r.key.type === "Identifier" && r.key.name === "styles" && u === "value";
1306
+ return e.match(t, (r, u) => Q(r) && u === "elements", n, ...Bn) || e.match(t, n, ...Bn);
1307
+ }
1308
+ function hs(e) {
1309
+ return e.match((t) => t.type === "TemplateLiteral", (t, n) => we(t) && !t.computed && t.key.type === "Identifier" && t.key.name === "template" && n === "value", ...Bn);
1310
+ }
1311
+ function Dn(e, t) {
1312
+ return x(e, S.Block | S.Leading, ({ value: n }) => n === ` ${t} `);
1313
+ }
1314
+ function Tu({ node: e, parent: t }, n) {
1315
+ return Dn(e, n) || xs(t) && Dn(t, n) || t.type === "ExpressionStatement" && Dn(t, n);
1316
+ }
1317
+ function xs(e) {
1318
+ return e.type === "AsConstExpression" || e.type === "TSAsExpression" && e.typeAnnotation.type === "TSTypeReference" && e.typeAnnotation.typeName.type === "Identifier" && e.typeAnnotation.typeName.name === "const";
1319
+ }
1320
+ async function Ts(e, t, n) {
1321
+ let { node: r } = n, u = r.quasis.map((d) => d.value.raw), a = 0, o = u.reduce((d, y, c) => c === 0 ? y : d + "@prettier-placeholder-" + a++ + "-id" + y, ""), i = await e(o, { parser: "scss" }), p = Qn(n, t), l = Ss(i, p);
1322
+ if (!l) throw new Error("Couldn't insert all the expressions");
1323
+ return ["`", g([A, l]), E, "`"];
1324
+ }
1325
+ function Ss(e, t) {
1326
+ if (!O(t)) return e;
1327
+ let n = 0, r = mt(Un(e), (u) => typeof u != "string" || !u.includes("@prettier-placeholder") ? u : u.split(/@prettier-placeholder-(\d+)-id/u).map((a, o) => o % 2 === 0 ? Ge(a) : (n++, t[a])));
1328
+ return t.length === n ? r : null;
1329
+ }
1330
+ function bs({ node: e, parent: t, grandparent: n }) {
1331
+ return n && e.quasis && t.type === "JSXExpressionContainer" && n.type === "JSXElement" && n.openingElement.name.name === "style" && n.openingElement.attributes.some((r) => r.type === "JSXAttribute" && r.name.name === "jsx") || (t == null ? void 0 : t.type) === "TaggedTemplateExpression" && t.tag.type === "Identifier" && t.tag.name === "css" || (t == null ? void 0 : t.type) === "TaggedTemplateExpression" && t.tag.type === "MemberExpression" && t.tag.object.name === "css" && (t.tag.property.name === "global" || t.tag.property.name === "resolve");
1332
+ }
1333
+ function Xt(e) {
1334
+ return e.type === "Identifier" && e.name === "styled";
1335
+ }
1336
+ function Fr(e) {
1337
+ return /^[A-Z]/u.test(e.object.name) && e.property.name === "extend";
1338
+ }
1339
+ function Bs({ parent: e }) {
1340
+ if (!e || e.type !== "TaggedTemplateExpression") return !1;
1341
+ let t = e.tag.type === "ParenthesizedExpression" ? e.tag.expression : e.tag;
1342
+ switch (t.type) {
1343
+ case "MemberExpression":
1344
+ return Xt(t.object) || Fr(t);
1345
+ case "CallExpression":
1346
+ return Xt(t.callee) || t.callee.type === "MemberExpression" && (t.callee.object.type === "MemberExpression" && (Xt(t.callee.object.object) || Fr(t.callee.object)) || t.callee.object.type === "CallExpression" && Xt(t.callee.object.callee));
1347
+ case "Identifier":
1348
+ return t.name === "css";
1349
+ default:
1350
+ return !1;
1351
+ }
1352
+ }
1353
+ function vs({ parent: e, grandparent: t }) {
1354
+ return (t == null ? void 0 : t.type) === "JSXAttribute" && e.type === "JSXExpressionContainer" && t.name.type === "JSXIdentifier" && t.name.name === "css";
1355
+ }
1356
+ function ks(e) {
1357
+ if (bs(e) || Bs(e) || vs(e) || Cs(e)) return Ts;
1358
+ }
1359
+ var Ps = ks;
1360
+ async function ws(e, t, n) {
1361
+ let { node: r } = n, u = r.quasis.length, a = Qn(n, t), o = [];
1362
+ for (let i = 0; i < u; i++) {
1363
+ let p = r.quasis[i], l = i === 0, d = i === u - 1, y = p.value.cooked, c = y.split(`
1364
+ `), s = c.length, D = a[i], f = s > 2 && c[0].trim() === "" && c[1].trim() === "", C = s > 2 && c[s - 1].trim() === "" && c[s - 2].trim() === "", F = c.every((b) => /^\s*(?:#[^\n\r]*)?$/u.test(b));
1365
+ if (!d && /#[^\n\r]*$/u.test(c[s - 1])) return null;
1366
+ let B = null;
1367
+ F ? B = Ns(c) : B = await e(y, { parser: "graphql" }), B ? (B = hu(B, !1), !l && f && o.push(""), o.push(B), !d && C && o.push("")) : !l && !d && f && o.push(""), D && o.push(D);
1368
+ }
1369
+ return ["`", g([A, N(A, o)]), A, "`"];
1370
+ }
1371
+ function Ns(e) {
1372
+ let t = [], n = !1, r = e.map((u) => u.trim());
1373
+ for (let [u, a] of r.entries()) a !== "" && (r[u - 1] === "" && n ? t.push([A, a]) : t.push(a), n = !0);
1374
+ return t.length === 0 ? null : N(A, t);
1375
+ }
1376
+ function Is({ node: e, parent: t }) {
1377
+ return Tu({ node: e, parent: t }, "GraphQL") || t && (t.type === "TaggedTemplateExpression" && (t.tag.type === "MemberExpression" && t.tag.object.name === "graphql" && t.tag.property.name === "experimental" || t.tag.type === "Identifier" && (t.tag.name === "gql" || t.tag.name === "graphql")) || t.type === "CallExpression" && t.callee.type === "Identifier" && t.callee.name === "graphql");
1378
+ }
1379
+ function js(e) {
1380
+ if (Is(e)) return ws;
1381
+ }
1382
+ var Ls = js, yn = 0;
1383
+ async function Su(e, t, n, r, u) {
1384
+ let { node: a } = r, o = yn;
1385
+ yn = yn + 1 >>> 0;
1386
+ let i = (F) => `PRETTIER_HTML_PLACEHOLDER_${F}_${o}_IN_JS`, p = a.quasis.map((F, B, b) => B === b.length - 1 ? F.value.cooked : F.value.cooked + i(B)).join(""), l = Qn(r, n), d = new RegExp(i(String.raw`(\d+)`), "gu"), y = 0, c = await t(p, { parser: e, __onHtmlRoot(F) {
1387
+ y = F.children.length;
1388
+ } }), s = mt(c, (F) => {
1389
+ if (typeof F != "string") return F;
1390
+ let B = [], b = F.split(d);
1391
+ for (let w = 0; w < b.length; w++) {
1392
+ let k = b[w];
1393
+ if (w % 2 === 0) {
1394
+ k && (k = xu(k), u.__embeddedInHtml && (k = H(!1, k, /<\/(?=script\b)/giu, String.raw`<\/`)), B.push(k));
1395
+ continue;
1396
+ }
1397
+ let h = Number(k);
1398
+ B.push(l[h]);
1399
+ }
1400
+ return B;
1401
+ }), D = /^\s/u.test(p) ? " " : "", f = /\s$/u.test(p) ? " " : "", C = u.htmlWhitespaceSensitivity === "ignore" ? A : D && f ? T : null;
1402
+ return C ? m(["`", g([C, m(s)]), C, "`"]) : wt({ hug: !1 }, m(["`", D, y > 1 ? g(m(s)) : m(s), f, "`"]));
1403
+ }
1404
+ function Ms(e) {
1405
+ return Tu(e, "HTML") || e.match((t) => t.type === "TemplateLiteral", (t, n) => t.type === "TaggedTemplateExpression" && t.tag.type === "Identifier" && t.tag.name === "html" && n === "quasi");
1406
+ }
1407
+ var Os = Su.bind(void 0, "html"), Js = Su.bind(void 0, "angular");
1408
+ function qs(e) {
1409
+ if (Ms(e)) return Os;
1410
+ if (hs(e)) return Js;
1411
+ }
1412
+ var _s = qs;
1413
+ async function Xs(e, t, n) {
1414
+ let { node: r } = n, u = H(!1, r.quasis[0].value.raw, /((?:\\\\)*)\\`/gu, (p, l) => "\\".repeat(l.length / 2) + "`"), a = $s(u), o = a !== "";
1415
+ o && (u = H(!1, u, new RegExp(`^${a}`, "gmu"), ""));
1416
+ let i = hu(await e(u, { parser: "markdown", __inJsTemplate: !0 }), !0);
1417
+ return ["`", o ? g([E, i]) : [ou, di(i)], E, "`"];
1418
+ }
1419
+ function $s(e) {
1420
+ let t = e.match(/^([^\S\n]*)\S/mu);
1421
+ return t === null ? "" : t[1];
1422
+ }
1423
+ function Rs(e) {
1424
+ if (Ws(e)) return Xs;
1425
+ }
1426
+ function Ws({ node: e, parent: t }) {
1427
+ return (t == null ? void 0 : t.type) === "TaggedTemplateExpression" && e.quasis.length === 1 && t.tag.type === "Identifier" && (t.tag.name === "md" || t.tag.name === "markdown");
1428
+ }
1429
+ var Us = Rs;
1430
+ function Gs(e) {
1431
+ let { node: t } = e;
1432
+ if (t.type !== "TemplateLiteral" || Vs(t)) return;
1433
+ let n;
1434
+ for (let r of [Ps, Ls, _s, Us]) if (n = r(e), !!n) return t.quasis.length === 1 && t.quasis[0].value.raw.trim() === "" ? "``" : async (...u) => {
1435
+ let a = await n(...u);
1436
+ return a && wt({ embed: !0, ...a.label }, a);
1437
+ };
1438
+ }
1439
+ function Vs({ quasis: e }) {
1440
+ return e.some(({ value: { cooked: t } }) => t === null);
1441
+ }
1442
+ var Ks = Gs, Hs = /\*\/$/, zs = /^\/\*\*?/, bu = /^\s*(\/\*\*?(.|\r?\n)*?\*\/)/, Qs = /(^|\s+)\/\/([^\n\r]*)/g, Ar = /^(\r?\n)+/, Ys = /(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g, gr = /(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g, Zs = /(\r?\n|^) *\* ?/g, Bu = [];
1443
+ function ep(e) {
1444
+ let t = e.match(bu);
1445
+ return t ? t[0].trimStart() : "";
1446
+ }
1447
+ function tp(e) {
1448
+ let t = e.match(bu), n = t == null ? void 0 : t[0];
1449
+ return n == null ? e : e.slice(n.length);
1450
+ }
1451
+ function np(e) {
1452
+ let t = `
1453
+ `;
1454
+ e = H(!1, e.replace(zs, "").replace(Hs, ""), Zs, "$1");
1455
+ let n = "";
1456
+ for (; n !== e; ) n = e, e = H(!1, e, Ys, `${t}$1 $2${t}`);
1457
+ e = e.replace(Ar, "").trimEnd();
1458
+ let r = /* @__PURE__ */ Object.create(null), u = H(!1, e, gr, "").replace(Ar, "").trimEnd(), a;
1459
+ for (; a = gr.exec(e); ) {
1460
+ let o = H(!1, a[2], Qs, "");
1461
+ if (typeof r[a[1]] == "string" || Array.isArray(r[a[1]])) {
1462
+ let i = r[a[1]];
1463
+ r[a[1]] = [...Bu, ...Array.isArray(i) ? i : [i], o];
1464
+ } else r[a[1]] = o;
1465
+ }
1466
+ return { comments: u, pragmas: r };
1467
+ }
1468
+ function rp({ comments: e = "", pragmas: t = {} }) {
1469
+ let n = `
1470
+ `, r = "/**", u = " *", a = " */", o = Object.keys(t), i = o.flatMap((l) => Cr(l, t[l])).map((l) => `${u} ${l}${n}`).join("");
1471
+ if (!e) {
1472
+ if (o.length === 0) return "";
1473
+ if (o.length === 1 && !Array.isArray(t[o[0]])) {
1474
+ let l = t[o[0]];
1475
+ return `${r} ${Cr(o[0], l)[0]}${a}`;
1476
+ }
1477
+ }
1478
+ let p = e.split(n).map((l) => `${u} ${l}`).join(n) + n;
1479
+ return r + n + (e ? p : "") + (e && o.length > 0 ? u + n : "") + i + a;
1480
+ }
1481
+ function Cr(e, t) {
1482
+ return [...Bu, ...Array.isArray(t) ? t : [t]].map((n) => `@${e} ${n}`.trim());
1483
+ }
1484
+ function up(e) {
1485
+ if (!e.startsWith("#!")) return "";
1486
+ let t = e.indexOf(`
1487
+ `);
1488
+ return t === -1 ? e : e.slice(0, t);
1489
+ }
1490
+ var ap = up;
1491
+ function op(e) {
1492
+ let t = ap(e);
1493
+ t && (e = e.slice(t.length + 1));
1494
+ let n = ep(e), { pragmas: r, comments: u } = np(n);
1495
+ return { shebang: t, text: e, pragmas: r, comments: u };
1496
+ }
1497
+ function ip(e) {
1498
+ let { shebang: t, text: n, pragmas: r, comments: u } = op(e), a = tp(n), o = rp({ pragmas: { format: "", ...r }, comments: u.trimStart() });
1499
+ return (t ? `${t}
1500
+ ` : "") + o + (a.startsWith(`
1501
+ `) ? `
1502
+ ` : `
1503
+
1504
+ `) + a;
1505
+ }
1506
+ function sp(e, t) {
1507
+ let { originalText: n, [Symbol.for("comments")]: r, locStart: u, locEnd: a, [Symbol.for("printedComments")]: o } = t, { node: i } = e, p = u(i), l = a(i);
1508
+ for (let d of r) u(d) >= p && a(d) <= l && o.add(d);
1509
+ return n.slice(p, l);
1510
+ }
1511
+ var pp = sp;
1512
+ function vn(e, t) {
1513
+ var n, r, u, a, o, i, p, l, d;
1514
+ if (e.isRoot) return !1;
1515
+ let { node: y, key: c, parent: s } = e;
1516
+ if (t.__isInHtmlInterpolation && !t.bracketSpacing && yp(y) && ht(e)) return !0;
1517
+ if (lp(y)) return !1;
1518
+ if (y.type === "Identifier") {
1519
+ if ((n = y.extra) != null && n.parenthesized && /^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/u.test(y.name) || c === "left" && (y.name === "async" && !s.await || y.name === "let") && s.type === "ForOfStatement") return !0;
1520
+ if (y.name === "let") {
1521
+ let D = (r = e.findAncestor((f) => f.type === "ForOfStatement")) == null ? void 0 : r.left;
1522
+ if (D && ee(D, (f) => f === y)) return !0;
1523
+ }
1524
+ if (c === "object" && y.name === "let" && s.type === "MemberExpression" && s.computed && !s.optional) {
1525
+ let D = e.findAncestor((C) => C.type === "ExpressionStatement" || C.type === "ForStatement" || C.type === "ForInStatement"), f = D ? D.type === "ExpressionStatement" ? D.expression : D.type === "ForStatement" ? D.init : D.left : void 0;
1526
+ if (f && ee(f, (C) => C === y)) return !0;
1527
+ }
1528
+ if (c === "expression") switch (y.name) {
1529
+ case "await":
1530
+ case "interface":
1531
+ case "module":
1532
+ case "using":
1533
+ case "yield":
1534
+ case "let":
1535
+ case "component":
1536
+ case "hook":
1537
+ case "type": {
1538
+ let D = e.findAncestor((f) => !he(f));
1539
+ if (D !== s && D.type === "ExpressionStatement") return !0;
1540
+ }
1541
+ }
1542
+ return !1;
1543
+ }
1544
+ if (y.type === "ObjectExpression" || y.type === "FunctionExpression" || y.type === "ClassExpression" || y.type === "DoExpression") {
1545
+ let D = (u = e.findAncestor((f) => f.type === "ExpressionStatement")) == null ? void 0 : u.expression;
1546
+ if (D && ee(D, (f) => f === y)) return !0;
1547
+ }
1548
+ if (y.type === "ObjectExpression") {
1549
+ let D = (a = e.findAncestor((f) => f.type === "ArrowFunctionExpression")) == null ? void 0 : a.body;
1550
+ if (D && D.type !== "SequenceExpression" && D.type !== "AssignmentExpression" && ee(D, (f) => f === y)) return !0;
1551
+ }
1552
+ switch (s.type) {
1553
+ case "ParenthesizedExpression":
1554
+ return !1;
1555
+ case "ClassDeclaration":
1556
+ case "ClassExpression":
1557
+ if (c === "superClass" && (y.type === "ArrowFunctionExpression" || y.type === "AssignmentExpression" || y.type === "AwaitExpression" || y.type === "BinaryExpression" || y.type === "ConditionalExpression" || y.type === "LogicalExpression" || y.type === "NewExpression" || y.type === "ObjectExpression" || y.type === "SequenceExpression" || y.type === "TaggedTemplateExpression" || y.type === "UnaryExpression" || y.type === "UpdateExpression" || y.type === "YieldExpression" || y.type === "TSNonNullExpression" || y.type === "ClassExpression" && O(y.decorators))) return !0;
1558
+ break;
1559
+ case "ExportDefaultDeclaration":
1560
+ return vu(e, t) || y.type === "SequenceExpression";
1561
+ case "Decorator":
1562
+ if (c === "expression" && !mp(y)) return !0;
1563
+ break;
1564
+ case "TypeAnnotation":
1565
+ if (e.match(void 0, void 0, (D, f) => f === "returnType" && D.type === "ArrowFunctionExpression") && Dp(y)) return !0;
1566
+ break;
1567
+ case "BinaryExpression":
1568
+ if (c === "left" && (s.operator === "in" || s.operator === "instanceof") && y.type === "UnaryExpression") return !0;
1569
+ break;
1570
+ case "VariableDeclarator":
1571
+ if (c === "init" && e.match(void 0, void 0, (D, f) => f === "declarations" && D.type === "VariableDeclaration", (D, f) => f === "left" && D.type === "ForInStatement")) return !0;
1572
+ break;
1573
+ }
1574
+ switch (y.type) {
1575
+ case "UpdateExpression":
1576
+ if (s.type === "UnaryExpression") return y.prefix && (y.operator === "++" && s.operator === "+" || y.operator === "--" && s.operator === "-");
1577
+ case "UnaryExpression":
1578
+ switch (s.type) {
1579
+ case "UnaryExpression":
1580
+ return y.operator === s.operator && (y.operator === "+" || y.operator === "-");
1581
+ case "BindExpression":
1582
+ return !0;
1583
+ case "MemberExpression":
1584
+ case "OptionalMemberExpression":
1585
+ return c === "object";
1586
+ case "TaggedTemplateExpression":
1587
+ return !0;
1588
+ case "NewExpression":
1589
+ case "CallExpression":
1590
+ case "OptionalCallExpression":
1591
+ return c === "callee";
1592
+ case "BinaryExpression":
1593
+ return c === "left" && s.operator === "**";
1594
+ case "TSNonNullExpression":
1595
+ return !0;
1596
+ default:
1597
+ return !1;
1598
+ }
1599
+ case "BinaryExpression":
1600
+ if (s.type === "UpdateExpression" || y.operator === "in" && cp(e)) return !0;
1601
+ if (y.operator === "|>" && (o = y.extra) != null && o.parenthesized) {
1602
+ let D = e.grandparent;
1603
+ if (D.type === "BinaryExpression" && D.operator === "|>") return !0;
1604
+ }
1605
+ case "TSTypeAssertion":
1606
+ case "TSAsExpression":
1607
+ case "TSSatisfiesExpression":
1608
+ case "AsExpression":
1609
+ case "AsConstExpression":
1610
+ case "SatisfiesExpression":
1611
+ case "LogicalExpression":
1612
+ switch (s.type) {
1613
+ case "TSAsExpression":
1614
+ case "TSSatisfiesExpression":
1615
+ case "AsExpression":
1616
+ case "AsConstExpression":
1617
+ case "SatisfiesExpression":
1618
+ return !he(y);
1619
+ case "ConditionalExpression":
1620
+ return he(y) || Ro(y);
1621
+ case "CallExpression":
1622
+ case "NewExpression":
1623
+ case "OptionalCallExpression":
1624
+ return c === "callee";
1625
+ case "ClassExpression":
1626
+ case "ClassDeclaration":
1627
+ return c === "superClass";
1628
+ case "TSTypeAssertion":
1629
+ case "TaggedTemplateExpression":
1630
+ case "UnaryExpression":
1631
+ case "JSXSpreadAttribute":
1632
+ case "SpreadElement":
1633
+ case "BindExpression":
1634
+ case "AwaitExpression":
1635
+ case "TSNonNullExpression":
1636
+ case "UpdateExpression":
1637
+ return !0;
1638
+ case "MemberExpression":
1639
+ case "OptionalMemberExpression":
1640
+ return c === "object";
1641
+ case "AssignmentExpression":
1642
+ case "AssignmentPattern":
1643
+ return c === "left" && (y.type === "TSTypeAssertion" || he(y));
1644
+ case "LogicalExpression":
1645
+ if (y.type === "LogicalExpression") return s.operator !== y.operator;
1646
+ case "BinaryExpression": {
1647
+ let { operator: D, type: f } = y;
1648
+ if (!D && f !== "TSTypeAssertion") return !0;
1649
+ let C = Gt(D), F = s.operator, B = Gt(F);
1650
+ return B > C || c === "right" && B === C || B === C && !Rn(F, D) ? !0 : B < C && D === "%" ? F === "+" || F === "-" : !!ni(F);
1651
+ }
1652
+ default:
1653
+ return !1;
1654
+ }
1655
+ case "SequenceExpression":
1656
+ switch (s.type) {
1657
+ case "ReturnStatement":
1658
+ return !1;
1659
+ case "ForStatement":
1660
+ return !1;
1661
+ case "ExpressionStatement":
1662
+ return c !== "expression";
1663
+ case "ArrowFunctionExpression":
1664
+ return c !== "body";
1665
+ default:
1666
+ return !0;
1667
+ }
1668
+ case "YieldExpression":
1669
+ if (s.type === "AwaitExpression" || s.type === "TSTypeAssertion") return !0;
1670
+ case "AwaitExpression":
1671
+ switch (s.type) {
1672
+ case "TaggedTemplateExpression":
1673
+ case "UnaryExpression":
1674
+ case "LogicalExpression":
1675
+ case "SpreadElement":
1676
+ case "TSAsExpression":
1677
+ case "TSSatisfiesExpression":
1678
+ case "TSNonNullExpression":
1679
+ case "AsExpression":
1680
+ case "AsConstExpression":
1681
+ case "SatisfiesExpression":
1682
+ case "BindExpression":
1683
+ return !0;
1684
+ case "MemberExpression":
1685
+ case "OptionalMemberExpression":
1686
+ return c === "object";
1687
+ case "NewExpression":
1688
+ case "CallExpression":
1689
+ case "OptionalCallExpression":
1690
+ return c === "callee";
1691
+ case "ConditionalExpression":
1692
+ return c === "test";
1693
+ case "BinaryExpression":
1694
+ return !(!y.argument && s.operator === "|>");
1695
+ default:
1696
+ return !1;
1697
+ }
1698
+ case "TSFunctionType":
1699
+ if (e.match((D) => D.type === "TSFunctionType", (D, f) => f === "typeAnnotation" && D.type === "TSTypeAnnotation", (D, f) => f === "returnType" && D.type === "ArrowFunctionExpression")) return !0;
1700
+ case "TSConditionalType":
1701
+ case "TSConstructorType":
1702
+ if (c === "extendsType" && s.type === "TSConditionalType") {
1703
+ if (y.type === "TSConditionalType") return !0;
1704
+ let { typeAnnotation: D } = y.returnType || y.typeAnnotation;
1705
+ if (D.type === "TSTypePredicate" && D.typeAnnotation && (D = D.typeAnnotation.typeAnnotation), D.type === "TSInferType" && D.typeParameter.constraint) return !0;
1706
+ }
1707
+ if (c === "checkType" && s.type === "TSConditionalType") return !0;
1708
+ case "TSUnionType":
1709
+ case "TSIntersectionType":
1710
+ if ((s.type === "TSUnionType" || s.type === "TSIntersectionType") && s.types.length > 1 && (!y.types || y.types.length > 1)) return !0;
1711
+ case "TSInferType":
1712
+ if (y.type === "TSInferType") {
1713
+ if (s.type === "TSRestType") return !1;
1714
+ if (c === "types" && (s.type === "TSUnionType" || s.type === "TSIntersectionType") && y.typeParameter.type === "TSTypeParameter" && y.typeParameter.constraint) return !0;
1715
+ }
1716
+ case "TSTypeOperator":
1717
+ return s.type === "TSArrayType" || s.type === "TSOptionalType" || s.type === "TSRestType" || c === "objectType" && s.type === "TSIndexedAccessType" || s.type === "TSTypeOperator" || s.type === "TSTypeAnnotation" && e.grandparent.type.startsWith("TSJSDoc");
1718
+ case "TSTypeQuery":
1719
+ return c === "objectType" && s.type === "TSIndexedAccessType" || c === "elementType" && s.type === "TSArrayType";
1720
+ case "TypeOperator":
1721
+ return s.type === "ArrayTypeAnnotation" || s.type === "NullableTypeAnnotation" || c === "objectType" && (s.type === "IndexedAccessType" || s.type === "OptionalIndexedAccessType") || s.type === "TypeOperator";
1722
+ case "TypeofTypeAnnotation":
1723
+ return c === "objectType" && (s.type === "IndexedAccessType" || s.type === "OptionalIndexedAccessType") || c === "elementType" && s.type === "ArrayTypeAnnotation";
1724
+ case "ArrayTypeAnnotation":
1725
+ return s.type === "NullableTypeAnnotation";
1726
+ case "IntersectionTypeAnnotation":
1727
+ case "UnionTypeAnnotation":
1728
+ return s.type === "TypeOperator" || s.type === "ArrayTypeAnnotation" || s.type === "NullableTypeAnnotation" || s.type === "IntersectionTypeAnnotation" || s.type === "UnionTypeAnnotation" || c === "objectType" && (s.type === "IndexedAccessType" || s.type === "OptionalIndexedAccessType");
1729
+ case "InferTypeAnnotation":
1730
+ case "NullableTypeAnnotation":
1731
+ return s.type === "ArrayTypeAnnotation" || c === "objectType" && (s.type === "IndexedAccessType" || s.type === "OptionalIndexedAccessType");
1732
+ case "ComponentTypeAnnotation":
1733
+ case "FunctionTypeAnnotation": {
1734
+ if (y.type === "ComponentTypeAnnotation" && (y.rendersType === null || y.rendersType === void 0)) return !1;
1735
+ if (e.match(void 0, (f, C) => C === "typeAnnotation" && f.type === "TypeAnnotation", (f, C) => C === "returnType" && f.type === "ArrowFunctionExpression") || e.match(void 0, (f, C) => C === "typeAnnotation" && f.type === "TypePredicate", (f, C) => C === "typeAnnotation" && f.type === "TypeAnnotation", (f, C) => C === "returnType" && f.type === "ArrowFunctionExpression")) return !0;
1736
+ let D = s.type === "NullableTypeAnnotation" ? e.grandparent : s;
1737
+ return D.type === "UnionTypeAnnotation" || D.type === "IntersectionTypeAnnotation" || D.type === "ArrayTypeAnnotation" || c === "objectType" && (D.type === "IndexedAccessType" || D.type === "OptionalIndexedAccessType") || c === "checkType" && s.type === "ConditionalTypeAnnotation" || c === "extendsType" && s.type === "ConditionalTypeAnnotation" && ((i = y.returnType) == null ? void 0 : i.type) === "InferTypeAnnotation" && ((p = y.returnType) == null ? void 0 : p.typeParameter.bound) || D.type === "NullableTypeAnnotation" || s.type === "FunctionTypeParam" && s.name === null && Z(y).some((f) => {
1738
+ var C;
1739
+ return ((C = f.typeAnnotation) == null ? void 0 : C.type) === "NullableTypeAnnotation";
1740
+ });
1741
+ }
1742
+ case "ConditionalTypeAnnotation":
1743
+ if (c === "extendsType" && s.type === "ConditionalTypeAnnotation" && y.type === "ConditionalTypeAnnotation" || c === "checkType" && s.type === "ConditionalTypeAnnotation") return !0;
1744
+ case "OptionalIndexedAccessType":
1745
+ return c === "objectType" && s.type === "IndexedAccessType";
1746
+ case "StringLiteral":
1747
+ case "NumericLiteral":
1748
+ case "Literal":
1749
+ if (typeof y.value == "string" && s.type === "ExpressionStatement" && !s.directive) {
1750
+ let D = e.grandparent;
1751
+ return D.type === "Program" || D.type === "BlockStatement";
1752
+ }
1753
+ return c === "object" && s.type === "MemberExpression" && typeof y.value == "number";
1754
+ case "AssignmentExpression": {
1755
+ let D = e.grandparent;
1756
+ return c === "body" && s.type === "ArrowFunctionExpression" ? !0 : c === "key" && (s.type === "ClassProperty" || s.type === "PropertyDefinition") && s.computed || (c === "init" || c === "update") && s.type === "ForStatement" ? !1 : s.type === "ExpressionStatement" ? y.left.type === "ObjectPattern" : !(c === "key" && s.type === "TSPropertySignature" || s.type === "AssignmentExpression" || s.type === "SequenceExpression" && D.type === "ForStatement" && (D.init === s || D.update === s) || c === "value" && s.type === "Property" && D.type === "ObjectPattern" && D.properties.includes(s) || s.type === "NGChainedExpression");
1757
+ }
1758
+ case "ConditionalExpression":
1759
+ switch (s.type) {
1760
+ case "TaggedTemplateExpression":
1761
+ case "UnaryExpression":
1762
+ case "SpreadElement":
1763
+ case "BinaryExpression":
1764
+ case "LogicalExpression":
1765
+ case "NGPipeExpression":
1766
+ case "ExportDefaultDeclaration":
1767
+ case "AwaitExpression":
1768
+ case "JSXSpreadAttribute":
1769
+ case "TSTypeAssertion":
1770
+ case "TypeCastExpression":
1771
+ case "TSAsExpression":
1772
+ case "TSSatisfiesExpression":
1773
+ case "AsExpression":
1774
+ case "AsConstExpression":
1775
+ case "SatisfiesExpression":
1776
+ case "TSNonNullExpression":
1777
+ return !0;
1778
+ case "NewExpression":
1779
+ case "CallExpression":
1780
+ case "OptionalCallExpression":
1781
+ return c === "callee";
1782
+ case "ConditionalExpression":
1783
+ return t.experimentalTernaries ? !1 : c === "test";
1784
+ case "MemberExpression":
1785
+ case "OptionalMemberExpression":
1786
+ return c === "object";
1787
+ default:
1788
+ return !1;
1789
+ }
1790
+ case "FunctionExpression":
1791
+ switch (s.type) {
1792
+ case "NewExpression":
1793
+ case "CallExpression":
1794
+ case "OptionalCallExpression":
1795
+ return c === "callee";
1796
+ case "TaggedTemplateExpression":
1797
+ return !0;
1798
+ default:
1799
+ return !1;
1800
+ }
1801
+ case "ArrowFunctionExpression":
1802
+ switch (s.type) {
1803
+ case "BinaryExpression":
1804
+ return s.operator !== "|>" || ((l = y.extra) == null ? void 0 : l.parenthesized);
1805
+ case "NewExpression":
1806
+ case "CallExpression":
1807
+ case "OptionalCallExpression":
1808
+ return c === "callee";
1809
+ case "MemberExpression":
1810
+ case "OptionalMemberExpression":
1811
+ return c === "object";
1812
+ case "TSAsExpression":
1813
+ case "TSSatisfiesExpression":
1814
+ case "AsExpression":
1815
+ case "AsConstExpression":
1816
+ case "SatisfiesExpression":
1817
+ case "TSNonNullExpression":
1818
+ case "BindExpression":
1819
+ case "TaggedTemplateExpression":
1820
+ case "UnaryExpression":
1821
+ case "LogicalExpression":
1822
+ case "AwaitExpression":
1823
+ case "TSTypeAssertion":
1824
+ return !0;
1825
+ case "ConditionalExpression":
1826
+ return c === "test";
1827
+ default:
1828
+ return !1;
1829
+ }
1830
+ case "ClassExpression":
1831
+ switch (s.type) {
1832
+ case "NewExpression":
1833
+ return c === "callee";
1834
+ default:
1835
+ return !1;
1836
+ }
1837
+ case "OptionalMemberExpression":
1838
+ case "OptionalCallExpression":
1839
+ case "CallExpression":
1840
+ case "MemberExpression":
1841
+ if (dp(e)) return !0;
1842
+ case "TaggedTemplateExpression":
1843
+ case "TSNonNullExpression":
1844
+ if (c === "callee" && (s.type === "BindExpression" || s.type === "NewExpression")) {
1845
+ let D = y;
1846
+ for (; D; ) switch (D.type) {
1847
+ case "CallExpression":
1848
+ case "OptionalCallExpression":
1849
+ return !0;
1850
+ case "MemberExpression":
1851
+ case "OptionalMemberExpression":
1852
+ case "BindExpression":
1853
+ D = D.object;
1854
+ break;
1855
+ case "TaggedTemplateExpression":
1856
+ D = D.tag;
1857
+ break;
1858
+ case "TSNonNullExpression":
1859
+ D = D.expression;
1860
+ break;
1861
+ default:
1862
+ return !1;
1863
+ }
1864
+ }
1865
+ return !1;
1866
+ case "BindExpression":
1867
+ return c === "callee" && (s.type === "BindExpression" || s.type === "NewExpression") || c === "object" && W(s);
1868
+ case "NGPipeExpression":
1869
+ return !(s.type === "NGRoot" || s.type === "NGMicrosyntaxExpression" || s.type === "ObjectProperty" && !((d = y.extra) != null && d.parenthesized) || Q(s) || c === "arguments" && L(s) || c === "right" && s.type === "NGPipeExpression" || c === "property" && s.type === "MemberExpression" || s.type === "AssignmentExpression");
1870
+ case "JSXFragment":
1871
+ case "JSXElement":
1872
+ return c === "callee" || c === "left" && s.type === "BinaryExpression" && s.operator === "<" || !Q(s) && s.type !== "ArrowFunctionExpression" && s.type !== "AssignmentExpression" && s.type !== "AssignmentPattern" && s.type !== "BinaryExpression" && s.type !== "NewExpression" && s.type !== "ConditionalExpression" && s.type !== "ExpressionStatement" && s.type !== "JsExpressionRoot" && s.type !== "JSXAttribute" && s.type !== "JSXElement" && s.type !== "JSXExpressionContainer" && s.type !== "JSXFragment" && s.type !== "LogicalExpression" && !L(s) && !we(s) && s.type !== "ReturnStatement" && s.type !== "ThrowStatement" && s.type !== "TypeCastExpression" && s.type !== "VariableDeclarator" && s.type !== "YieldExpression";
1873
+ case "TSInstantiationExpression":
1874
+ return c === "object" && W(s);
1875
+ }
1876
+ return !1;
1877
+ }
1878
+ var lp = q(["BlockStatement", "BreakStatement", "ComponentDeclaration", "ClassBody", "ClassDeclaration", "ClassMethod", "ClassProperty", "PropertyDefinition", "ClassPrivateProperty", "ContinueStatement", "DebuggerStatement", "DeclareComponent", "DeclareClass", "DeclareExportAllDeclaration", "DeclareExportDeclaration", "DeclareFunction", "DeclareHook", "DeclareInterface", "DeclareModule", "DeclareModuleExports", "DeclareNamespace", "DeclareVariable", "DeclareEnum", "DoWhileStatement", "EnumDeclaration", "ExportAllDeclaration", "ExportDefaultDeclaration", "ExportNamedDeclaration", "ExpressionStatement", "ForInStatement", "ForOfStatement", "ForStatement", "FunctionDeclaration", "HookDeclaration", "IfStatement", "ImportDeclaration", "InterfaceDeclaration", "LabeledStatement", "MethodDefinition", "ReturnStatement", "SwitchStatement", "ThrowStatement", "TryStatement", "TSDeclareFunction", "TSEnumDeclaration", "TSImportEqualsDeclaration", "TSInterfaceDeclaration", "TSModuleDeclaration", "TSNamespaceExportDeclaration", "TypeAlias", "VariableDeclaration", "WhileStatement", "WithStatement"]);
1879
+ function cp(e) {
1880
+ let t = 0, { node: n } = e;
1881
+ for (; n; ) {
1882
+ let r = e.getParentNode(t++);
1883
+ if ((r == null ? void 0 : r.type) === "ForStatement" && r.init === n) return !0;
1884
+ n = r;
1885
+ }
1886
+ return !1;
1887
+ }
1888
+ function Dp(e) {
1889
+ return gn(e, (t) => t.type === "ObjectTypeAnnotation" && gn(t, (n) => n.type === "FunctionTypeAnnotation"));
1890
+ }
1891
+ function yp(e) {
1892
+ return Ae(e);
1893
+ }
1894
+ function ht(e) {
1895
+ let { parent: t, key: n } = e;
1896
+ switch (t.type) {
1897
+ case "NGPipeExpression":
1898
+ if (n === "arguments" && e.isLast) return e.callParent(ht);
1899
+ break;
1900
+ case "ObjectProperty":
1901
+ if (n === "value") return e.callParent(() => e.key === "properties" && e.isLast);
1902
+ break;
1903
+ case "BinaryExpression":
1904
+ case "LogicalExpression":
1905
+ if (n === "right") return e.callParent(ht);
1906
+ break;
1907
+ case "ConditionalExpression":
1908
+ if (n === "alternate") return e.callParent(ht);
1909
+ break;
1910
+ case "UnaryExpression":
1911
+ if (t.prefix) return e.callParent(ht);
1912
+ break;
1913
+ }
1914
+ return !1;
1915
+ }
1916
+ function vu(e, t) {
1917
+ let { node: n, parent: r } = e;
1918
+ return n.type === "FunctionExpression" || n.type === "ClassExpression" ? r.type === "ExportDefaultDeclaration" || !vn(e, t) : !qn(n) || r.type !== "ExportDefaultDeclaration" && vn(e, t) ? !1 : e.call(() => vu(e, t), ...Wr(n));
1919
+ }
1920
+ function dp(e) {
1921
+ let { node: t, parent: n, grandparent: r, key: u } = e;
1922
+ return !!((t.type === "OptionalMemberExpression" || t.type === "OptionalCallExpression") && (u === "object" && n.type === "MemberExpression" || u === "callee" && (n.type === "CallExpression" || n.type === "NewExpression") || n.type === "TSNonNullExpression" && r.type === "MemberExpression" && r.object === n) || e.match(() => t.type === "CallExpression" || t.type === "MemberExpression", (a, o) => o === "expression" && a.type === "ChainExpression") && (e.match(void 0, void 0, (a, o) => o === "callee" && (a.type === "CallExpression" && !a.optional || a.type === "NewExpression") || o === "object" && a.type === "MemberExpression" && !a.optional) || e.match(void 0, void 0, (a, o) => o === "expression" && a.type === "TSNonNullExpression", (a, o) => o === "object" && a.type === "MemberExpression")) || e.match(() => t.type === "CallExpression" || t.type === "MemberExpression", (a, o) => o === "expression" && a.type === "TSNonNullExpression", (a, o) => o === "expression" && a.type === "ChainExpression", (a, o) => o === "object" && a.type === "MemberExpression"));
1923
+ }
1924
+ function kn(e) {
1925
+ return e.type === "Identifier" ? !0 : W(e) ? !e.computed && !e.optional && e.property.type === "Identifier" && kn(e.object) : !1;
1926
+ }
1927
+ function mp(e) {
1928
+ return e.type === "ChainExpression" && (e = e.expression), kn(e) || L(e) && !e.optional && kn(e.callee);
1929
+ }
1930
+ var et = vn;
1931
+ function fp(e, t) {
1932
+ let n = t - 1;
1933
+ n = it(e, n, { backwards: !0 }), n = st(e, n, { backwards: !0 }), n = it(e, n, { backwards: !0 });
1934
+ let r = st(e, n, { backwards: !0 });
1935
+ return n !== r;
1936
+ }
1937
+ var Ep = fp, Fp = () => !0;
1938
+ function Yn(e, t) {
1939
+ let n = e.node;
1940
+ return n.printed = !0, t.printer.printComment(e, t);
1941
+ }
1942
+ function Ap(e, t) {
1943
+ var n;
1944
+ let r = e.node, u = [Yn(e, t)], { printer: a, originalText: o, locStart: i, locEnd: p } = t;
1945
+ if ((n = a.isBlockComment) != null && n.call(a, r)) {
1946
+ let d = ie(o, p(r)) ? ie(o, i(r), { backwards: !0 }) ? A : T : " ";
1947
+ u.push(d);
1948
+ } else u.push(A);
1949
+ let l = st(o, it(o, p(r)));
1950
+ return l !== !1 && ie(o, l) && u.push(A), u;
1951
+ }
1952
+ function gp(e, t, n) {
1953
+ var r;
1954
+ let u = e.node, a = Yn(e, t), { printer: o, originalText: i, locStart: p } = t, l = (r = o.isBlockComment) == null ? void 0 : r.call(o, u);
1955
+ if (n != null && n.hasLineSuffix && !(n != null && n.isBlock) || ie(i, p(u), { backwards: !0 })) {
1956
+ let d = Ep(i, p(u));
1957
+ return { doc: mr([A, d ? A : "", a]), isBlock: l, hasLineSuffix: !0 };
1958
+ }
1959
+ return !l || n != null && n.hasLineSuffix ? { doc: [mr([" ", a]), Se], isBlock: l, hasLineSuffix: !0 } : { doc: [" ", a], isBlock: l, hasLineSuffix: !1 };
1960
+ }
1961
+ function X(e, t, n = {}) {
1962
+ let { node: r } = e;
1963
+ if (!O(r == null ? void 0 : r.comments)) return "";
1964
+ let { indent: u = !1, marker: a, filter: o = Fp } = n, i = [];
1965
+ if (e.each(({ node: l }) => {
1966
+ l.leading || l.trailing || l.marker !== a || !o(l) || i.push(Yn(e, t));
1967
+ }, "comments"), i.length === 0) return "";
1968
+ let p = N(A, i);
1969
+ return u ? g([A, p]) : p;
1970
+ }
1971
+ function ku(e, t) {
1972
+ let n = e.node;
1973
+ if (!n) return {};
1974
+ let r = t[Symbol.for("printedComments")];
1975
+ if ((n.comments || []).filter((i) => !r.has(i)).length === 0) return { leading: "", trailing: "" };
1976
+ let u = [], a = [], o;
1977
+ return e.each(() => {
1978
+ let i = e.node;
1979
+ if (r != null && r.has(i)) return;
1980
+ let { leading: p, trailing: l } = i;
1981
+ p ? u.push(Ap(e, t)) : l && (o = gp(e, t, o), a.push(o.doc));
1982
+ }, "comments"), { leading: u, trailing: a };
1983
+ }
1984
+ function Fe(e, t, n) {
1985
+ let { leading: r, trailing: u } = ku(e, n);
1986
+ return !r && !u ? t : xn(t, (a) => [r, a, u]);
1987
+ }
1988
+ var Cp = class extends Error {
1989
+ constructor(t, n, r = "type") {
1990
+ super(`Unexpected ${n} node ${r}: ${JSON.stringify(t[r])}.`);
1991
+ Ot(this, "name", "UnexpectedNodeError");
1992
+ this.node = t;
1993
+ }
1994
+ }, ft = Cp;
1995
+ function hp(e) {
1996
+ if (typeof e != "string") throw new TypeError("Expected a string");
1997
+ return e.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d");
1998
+ }
1999
+ var fe, xp = class {
2000
+ constructor(e) {
2001
+ Ya(this, fe), Za(this, fe, new Set(e));
2002
+ }
2003
+ getLeadingWhitespaceCount(e) {
2004
+ let t = Ne(this, fe), n = 0;
2005
+ for (let r = 0; r < e.length && t.has(e.charAt(r)); r++) n++;
2006
+ return n;
2007
+ }
2008
+ getTrailingWhitespaceCount(e) {
2009
+ let t = Ne(this, fe), n = 0;
2010
+ for (let r = e.length - 1; r >= 0 && t.has(e.charAt(r)); r--) n++;
2011
+ return n;
2012
+ }
2013
+ getLeadingWhitespace(e) {
2014
+ let t = this.getLeadingWhitespaceCount(e);
2015
+ return e.slice(0, t);
2016
+ }
2017
+ getTrailingWhitespace(e) {
2018
+ let t = this.getTrailingWhitespaceCount(e);
2019
+ return e.slice(e.length - t);
2020
+ }
2021
+ hasLeadingWhitespace(e) {
2022
+ return Ne(this, fe).has(e.charAt(0));
2023
+ }
2024
+ hasTrailingWhitespace(e) {
2025
+ return Ne(this, fe).has(M(!1, e, -1));
2026
+ }
2027
+ trimStart(e) {
2028
+ let t = this.getLeadingWhitespaceCount(e);
2029
+ return e.slice(t);
2030
+ }
2031
+ trimEnd(e) {
2032
+ let t = this.getTrailingWhitespaceCount(e);
2033
+ return e.slice(0, e.length - t);
2034
+ }
2035
+ trim(e) {
2036
+ return this.trimEnd(this.trimStart(e));
2037
+ }
2038
+ split(e, t = !1) {
2039
+ let n = `[${hp([...Ne(this, fe)].join(""))}]+`, r = new RegExp(t ? `(${n})` : n, "u");
2040
+ return e.split(r);
2041
+ }
2042
+ hasWhitespaceCharacter(e) {
2043
+ let t = Ne(this, fe);
2044
+ return Array.prototype.some.call(e, (n) => t.has(n));
2045
+ }
2046
+ hasNonWhitespaceCharacter(e) {
2047
+ let t = Ne(this, fe);
2048
+ return Array.prototype.some.call(e, (n) => !t.has(n));
2049
+ }
2050
+ isWhitespaceOnly(e) {
2051
+ let t = Ne(this, fe);
2052
+ return Array.prototype.every.call(e, (n) => t.has(n));
2053
+ }
2054
+ };
2055
+ fe = /* @__PURE__ */ new WeakMap();
2056
+ var Tp = xp, Rt = new Tp(`
2057
+ \r `), dn = (e) => e === "" || e === T || e === A || e === E;
2058
+ function Sp(e, t, n) {
2059
+ var r, u, a;
2060
+ let { node: o } = e;
2061
+ if (o.type === "JSXElement" && _p(o)) return [n("openingElement"), n("closingElement")];
2062
+ let i = o.type === "JSXElement" ? n("openingElement") : n("openingFragment"), p = o.type === "JSXElement" ? n("closingElement") : n("closingFragment");
2063
+ if (o.children.length === 1 && o.children[0].type === "JSXExpressionContainer" && (o.children[0].expression.type === "TemplateLiteral" || o.children[0].expression.type === "TaggedTemplateExpression")) return [i, ...e.map(n, "children"), p];
2064
+ o.children = o.children.map((h) => Xp(h) ? { type: "JSXText", value: " ", raw: " " } : h);
2065
+ let l = o.children.some(V), d = o.children.filter((h) => h.type === "JSXExpressionContainer").length > 1, y = o.type === "JSXElement" && o.openingElement.attributes.length > 1, c = te(i) || l || y || d, s = e.parent.rootMarker === "mdx", D = t.singleQuote ? "{' '}" : '{" "}', f = s ? " " : P([D, E], " "), C = ((u = (r = o.openingElement) == null ? void 0 : r.name) == null ? void 0 : u.name) === "fbt", F = bp(e, t, n, f, C), B = o.children.some((h) => kt(h));
2066
+ for (let h = F.length - 2; h >= 0; h--) {
2067
+ let j = F[h] === "" && F[h + 1] === "", ue = F[h] === A && F[h + 1] === "" && F[h + 2] === A, _ = (F[h] === E || F[h] === A) && F[h + 1] === "" && F[h + 2] === f, K = F[h] === f && F[h + 1] === "" && (F[h + 2] === E || F[h + 2] === A), U = F[h] === f && F[h + 1] === "" && F[h + 2] === f, nt = F[h] === E && F[h + 1] === "" && F[h + 2] === A || F[h] === A && F[h + 1] === "" && F[h + 2] === E;
2068
+ ue && B || j || _ || U || nt ? F.splice(h, 2) : K && F.splice(h + 1, 2);
2069
+ }
2070
+ for (; F.length > 0 && dn(M(!1, F, -1)); ) F.pop();
2071
+ for (; F.length > 1 && dn(F[0]) && dn(F[1]); ) F.shift(), F.shift();
2072
+ let b = [];
2073
+ for (let [h, j] of F.entries()) {
2074
+ if (j === f) {
2075
+ if (h === 1 && F[h - 1] === "") {
2076
+ if (F.length === 2) {
2077
+ b.push(D);
2078
+ continue;
2079
+ }
2080
+ b.push([D, A]);
2081
+ continue;
2082
+ } else if (h === F.length - 1) {
2083
+ b.push(D);
2084
+ continue;
2085
+ } else if (F[h - 1] === "" && F[h - 2] === A) {
2086
+ b.push(D);
2087
+ continue;
2088
+ }
2089
+ }
2090
+ b.push(j), te(j) && (c = !0);
2091
+ }
2092
+ let w = B ? Wn(b) : m(b, { shouldBreak: !0 });
2093
+ if (((a = t.cursorNode) == null ? void 0 : a.type) === "JSXText" && o.children.includes(t.cursorNode) && (w = [fr, w, fr]), s) return w;
2094
+ let k = m([i, g([A, w]), A, p]);
2095
+ return c ? k : Re([m([i, ...F, p]), k]);
2096
+ }
2097
+ function bp(e, t, n, r, u) {
2098
+ let a = [];
2099
+ return e.each(({ node: o, next: i }) => {
2100
+ if (o.type === "JSXText") {
2101
+ let p = pe(o);
2102
+ if (kt(o)) {
2103
+ let l = Rt.split(p, !0);
2104
+ l[0] === "" && (a.push(""), l.shift(), /\n/u.test(l[0]) ? a.push(xr(u, l[1], o, i)) : a.push(r), l.shift());
2105
+ let d;
2106
+ if (M(!1, l, -1) === "" && (l.pop(), d = l.pop()), l.length === 0) return;
2107
+ for (let [y, c] of l.entries()) y % 2 === 1 ? a.push(T) : a.push(c);
2108
+ d !== void 0 ? /\n/u.test(d) ? a.push(xr(u, M(!1, a, -1), o, i)) : a.push(r) : a.push(hr(u, M(!1, a, -1), o, i));
2109
+ } else /\n/u.test(p) ? p.match(/\n/gu).length > 1 && a.push("", A) : a.push("", r);
2110
+ } else {
2111
+ let p = n();
2112
+ if (a.push(p), i && kt(i)) {
2113
+ let l = Rt.trim(pe(i)), [d] = Rt.split(l);
2114
+ a.push(hr(u, d, o, i));
2115
+ } else a.push(A);
2116
+ }
2117
+ }, "children"), a;
2118
+ }
2119
+ function hr(e, t, n, r) {
2120
+ return e ? "" : n.type === "JSXElement" && !n.closingElement || (r == null ? void 0 : r.type) === "JSXElement" && !r.closingElement ? t.length === 1 ? E : A : E;
2121
+ }
2122
+ function xr(e, t, n, r) {
2123
+ return e ? A : t.length === 1 ? n.type === "JSXElement" && !n.closingElement || (r == null ? void 0 : r.type) === "JSXElement" && !r.closingElement ? A : E : A;
2124
+ }
2125
+ var Bp = /* @__PURE__ */ new Set(["ArrayExpression", "TupleExpression", "JSXAttribute", "JSXElement", "JSXExpressionContainer", "JSXFragment", "ExpressionStatement", "CallExpression", "OptionalCallExpression", "ConditionalExpression", "JsExpressionRoot"]);
2126
+ function vp(e, t, n) {
2127
+ let { parent: r } = e;
2128
+ if (Bp.has(r.type)) return t;
2129
+ let u = e.match(void 0, (o) => o.type === "ArrowFunctionExpression", L, (o) => o.type === "JSXExpressionContainer"), a = et(e, n);
2130
+ return m([a ? "" : P("("), g([E, t]), E, a ? "" : P(")")], { shouldBreak: u });
2131
+ }
2132
+ function kp(e, t, n) {
2133
+ let { node: r } = e, u = [];
2134
+ if (u.push(n("name")), r.value) {
2135
+ let a;
2136
+ if (re(r.value)) {
2137
+ let o = pe(r.value), i = H(!1, H(!1, o.slice(1, -1), "&apos;", "'"), "&quot;", '"'), p = qr(i, t.jsxSingleQuote);
2138
+ i = p === '"' ? H(!1, i, '"', "&quot;") : H(!1, i, "'", "&apos;"), a = e.call(() => Fe(e, Ge(p + i + p), t), "value");
2139
+ } else a = n("value");
2140
+ u.push("=", a);
2141
+ }
2142
+ return u;
2143
+ }
2144
+ function Pp(e, t, n) {
2145
+ let { node: r } = e, u = (a, o) => a.type === "JSXEmptyExpression" || !x(a) && (Q(a) || Ae(a) || a.type === "ArrowFunctionExpression" || a.type === "AwaitExpression" && (u(a.argument, a) || a.argument.type === "JSXElement") || L(a) || a.type === "ChainExpression" && L(a.expression) || a.type === "FunctionExpression" || a.type === "TemplateLiteral" || a.type === "TaggedTemplateExpression" || a.type === "DoExpression" || V(o) && (a.type === "ConditionalExpression" || Be(a)));
2146
+ return u(r.expression, e.parent) ? m(["{", n("expression"), ve, "}"]) : m(["{", g([E, n("expression")]), E, ve, "}"]);
2147
+ }
2148
+ function wp(e, t, n) {
2149
+ var r, u;
2150
+ let { node: a } = e, o = x(a.name) || x(a.typeParameters) || x(a.typeArguments);
2151
+ if (a.selfClosing && a.attributes.length === 0 && !o) return ["<", n("name"), a.typeArguments ? n("typeArguments") : n("typeParameters"), " />"];
2152
+ if (((r = a.attributes) == null ? void 0 : r.length) === 1 && re(a.attributes[0].value) && !a.attributes[0].value.value.includes(`
2153
+ `) && !o && !x(a.attributes[0])) return m(["<", n("name"), a.typeArguments ? n("typeArguments") : n("typeParameters"), " ", ...e.map(n, "attributes"), a.selfClosing ? " />" : ">"]);
2154
+ let i = (u = a.attributes) == null ? void 0 : u.some((l) => re(l.value) && l.value.value.includes(`
2155
+ `)), p = t.singleAttributePerLine && a.attributes.length > 1 ? A : T;
2156
+ return m(["<", n("name"), a.typeArguments ? n("typeArguments") : n("typeParameters"), g(e.map(() => [p, n()], "attributes")), ...Np(a, t, o)], { shouldBreak: i });
2157
+ }
2158
+ function Np(e, t, n) {
2159
+ return e.selfClosing ? [T, "/>"] : Ip(e, t, n) ? [">"] : [E, ">"];
2160
+ }
2161
+ function Ip(e, t, n) {
2162
+ let r = e.attributes.length > 0 && x(M(!1, e.attributes, -1), S.Trailing);
2163
+ return e.attributes.length === 0 && !n || (t.bracketSameLine || t.jsxBracketSameLine) && (!n || e.attributes.length > 0) && !r;
2164
+ }
2165
+ function jp(e, t, n) {
2166
+ let { node: r } = e, u = [];
2167
+ u.push("</");
2168
+ let a = n("name");
2169
+ return x(r.name, S.Leading | S.Line) ? u.push(g([A, a]), A) : x(r.name, S.Leading | S.Block) ? u.push(" ", a) : u.push(a), u.push(">"), u;
2170
+ }
2171
+ function Lp(e, t) {
2172
+ let { node: n } = e, r = x(n), u = x(n, S.Line), a = n.type === "JSXOpeningFragment";
2173
+ return [a ? "<" : "</", g([u ? A : r && !a ? " " : "", X(e, t)]), u ? A : "", ">"];
2174
+ }
2175
+ function Mp(e, t, n) {
2176
+ let r = Fe(e, Sp(e, t, n), t);
2177
+ return vp(e, r, t);
2178
+ }
2179
+ function Op(e, t) {
2180
+ let { node: n } = e, r = x(n, S.Line);
2181
+ return [X(e, t, { indent: r }), r ? A : ""];
2182
+ }
2183
+ function Jp(e, t, n) {
2184
+ let { node: r } = e;
2185
+ return ["{", e.call(({ node: u }) => {
2186
+ let a = ["...", n()];
2187
+ return !x(u) || !Fu(e) ? a : [g([E, Fe(e, a, t)]), E];
2188
+ }, r.type === "JSXSpreadAttribute" ? "argument" : "expression"), "}"];
2189
+ }
2190
+ function qp(e, t, n) {
2191
+ let { node: r } = e;
2192
+ if (r.type.startsWith("JSX")) switch (r.type) {
2193
+ case "JSXAttribute":
2194
+ return kp(e, t, n);
2195
+ case "JSXIdentifier":
2196
+ return r.name;
2197
+ case "JSXNamespacedName":
2198
+ return N(":", [n("namespace"), n("name")]);
2199
+ case "JSXMemberExpression":
2200
+ return N(".", [n("object"), n("property")]);
2201
+ case "JSXSpreadAttribute":
2202
+ case "JSXSpreadChild":
2203
+ return Jp(e, t, n);
2204
+ case "JSXExpressionContainer":
2205
+ return Pp(e, t, n);
2206
+ case "JSXFragment":
2207
+ case "JSXElement":
2208
+ return Mp(e, t, n);
2209
+ case "JSXOpeningElement":
2210
+ return wp(e, t, n);
2211
+ case "JSXClosingElement":
2212
+ return jp(e, t, n);
2213
+ case "JSXOpeningFragment":
2214
+ case "JSXClosingFragment":
2215
+ return Lp(e, t);
2216
+ case "JSXEmptyExpression":
2217
+ return Op(e, t);
2218
+ case "JSXText":
2219
+ throw new Error("JSXText should be handled by JSXElement");
2220
+ default:
2221
+ throw new ft(r, "JSX");
2222
+ }
2223
+ }
2224
+ function _p(e) {
2225
+ if (e.children.length === 0) return !0;
2226
+ if (e.children.length > 1) return !1;
2227
+ let t = e.children[0];
2228
+ return t.type === "JSXText" && !kt(t);
2229
+ }
2230
+ function kt(e) {
2231
+ return e.type === "JSXText" && (Rt.hasNonWhitespaceCharacter(pe(e)) || !/\n/u.test(pe(e)));
2232
+ }
2233
+ function Xp(e) {
2234
+ return e.type === "JSXExpressionContainer" && re(e.expression) && e.expression.value === " " && !x(e.expression);
2235
+ }
2236
+ function $p(e) {
2237
+ let { node: t, parent: n } = e;
2238
+ if (!V(t) || !V(n)) return !1;
2239
+ let { index: r, siblings: u } = e, a;
2240
+ for (let o = r; o > 0; o--) {
2241
+ let i = u[o - 1];
2242
+ if (!(i.type === "JSXText" && !kt(i))) {
2243
+ a = i;
2244
+ break;
2245
+ }
2246
+ }
2247
+ return (a == null ? void 0 : a.type) === "JSXExpressionContainer" && a.expression.type === "JSXEmptyExpression" && nn(a.expression);
2248
+ }
2249
+ function Rp(e) {
2250
+ return nn(e.node) || $p(e);
2251
+ }
2252
+ var Pu = Rp, Wp = 0;
2253
+ function wu(e, t, n) {
2254
+ var r;
2255
+ let { node: u, parent: a, grandparent: o, key: i } = e, p = i !== "body" && (a.type === "IfStatement" || a.type === "WhileStatement" || a.type === "SwitchStatement" || a.type === "DoWhileStatement"), l = u.operator === "|>" && ((r = e.root.extra) == null ? void 0 : r.__isUsingHackPipeline), d = Pn(e, n, t, !1, p);
2256
+ if (p) return d;
2257
+ if (l) return m(d);
2258
+ if (L(a) && a.callee === u || a.type === "UnaryExpression" || W(a) && !a.computed) return m([g([E, ...d]), E]);
2259
+ let y = a.type === "ReturnStatement" || a.type === "ThrowStatement" || a.type === "JSXExpressionContainer" && o.type === "JSXAttribute" || u.operator !== "|" && a.type === "JsExpressionRoot" || u.type !== "NGPipeExpression" && (a.type === "NGRoot" && t.parser === "__ng_binding" || a.type === "NGMicrosyntaxExpression" && o.type === "NGMicrosyntax" && o.body.length === 1) || u === a.body && a.type === "ArrowFunctionExpression" || u !== a.body && a.type === "ForStatement" || a.type === "ConditionalExpression" && o.type !== "ReturnStatement" && o.type !== "ThrowStatement" && !L(o) || a.type === "TemplateLiteral", c = a.type === "AssignmentExpression" || a.type === "VariableDeclarator" || a.type === "ClassProperty" || a.type === "PropertyDefinition" || a.type === "TSAbstractPropertyDefinition" || a.type === "ClassPrivateProperty" || we(a), s = Be(u.left) && Rn(u.operator, u.left.operator);
2260
+ if (y || Pt(u) && !s || !Pt(u) && c) return m(d);
2261
+ if (d.length === 0) return "";
2262
+ let D = V(u.right), f = d.findIndex((k) => typeof k != "string" && !Array.isArray(k) && k.type === le), C = d.slice(0, f === -1 ? 1 : f + 1), F = d.slice(C.length, D ? -1 : void 0), B = Symbol("logicalChain-" + ++Wp), b = m([...C, g(F)], { id: B });
2263
+ if (!D) return b;
2264
+ let w = M(!1, d, -1);
2265
+ return m([b, rn(w, { groupId: B })]);
2266
+ }
2267
+ function Pn(e, t, n, r, u) {
2268
+ var a;
2269
+ let { node: o } = e;
2270
+ if (!Be(o)) return [m(t())];
2271
+ let i = [];
2272
+ Rn(o.operator, o.left.operator) ? i = e.call((C) => Pn(C, t, n, !0, u), "left") : i.push(m(t("left")));
2273
+ let p = Pt(o), l = (o.operator === "|>" || o.type === "NGPipeExpression" || Up(e, n)) && !We(n.originalText, o.right), d = o.type === "NGPipeExpression" ? "|" : o.operator, y = o.type === "NGPipeExpression" && o.arguments.length > 0 ? m(g([E, ": ", N([T, ": "], e.map(() => Te(2, m(t())), "arguments"))])) : "", c;
2274
+ if (p) c = [d, " ", t("right"), y];
2275
+ else {
2276
+ let C = d === "|>" && ((a = e.root.extra) != null && a.__isUsingHackPipeline) ? e.call((F) => Pn(F, t, n, !0, u), "right") : t("right");
2277
+ c = [l ? T : "", d, l ? " " : T, C, y];
2278
+ }
2279
+ let { parent: s } = e, D = x(o.left, S.Trailing | S.Line), f = D || !(u && o.type === "LogicalExpression") && s.type !== o.type && o.left.type !== o.type && o.right.type !== o.type;
2280
+ if (i.push(l ? "" : " ", f ? m(c, { shouldBreak: D }) : c), r && x(o)) {
2281
+ let C = Un(Fe(e, i, n));
2282
+ return C.type === Je ? C.parts : Array.isArray(C) ? C : [C];
2283
+ }
2284
+ return i;
2285
+ }
2286
+ function Pt(e) {
2287
+ return e.type !== "LogicalExpression" ? !1 : !!(Ae(e.right) && e.right.properties.length > 0 || Q(e.right) && e.right.elements.length > 0 || V(e.right));
2288
+ }
2289
+ var Tr = (e) => e.type === "BinaryExpression" && e.operator === "|";
2290
+ function Up(e, t) {
2291
+ return (t.parser === "__vue_expression" || t.parser === "__vue_ts_expression") && Tr(e.node) && !e.hasAncestor((n) => !Tr(n) && n.type !== "JsExpressionRoot");
2292
+ }
2293
+ function Gp(e, t, n) {
2294
+ let { node: r } = e;
2295
+ if (r.type.startsWith("NG")) switch (r.type) {
2296
+ case "NGRoot":
2297
+ return [n("node"), x(r.node) ? " //" + at(r.node)[0].value.trimEnd() : ""];
2298
+ case "NGPipeExpression":
2299
+ return wu(e, t, n);
2300
+ case "NGChainedExpression":
2301
+ return m(N([";", T], e.map(() => Kp(e) ? n() : ["(", n(), ")"], "expressions")));
2302
+ case "NGEmptyExpression":
2303
+ return "";
2304
+ case "NGMicrosyntax":
2305
+ return e.map(() => [e.isFirst ? "" : Sr(e) ? " " : [";", T], n()], "body");
2306
+ case "NGMicrosyntaxKey":
2307
+ return /^[$_a-z][\w$]*(?:-[$_a-z][\w$])*$/iu.test(r.name) ? r.name : JSON.stringify(r.name);
2308
+ case "NGMicrosyntaxExpression":
2309
+ return [n("expression"), r.alias === null ? "" : [" as ", n("alias")]];
2310
+ case "NGMicrosyntaxKeyedExpression": {
2311
+ let { index: u, parent: a } = e, o = Sr(e) || (u === 1 && (r.key.name === "then" || r.key.name === "else" || r.key.name === "as") || (u === 2 || u === 3) && (r.key.name === "else" && a.body[u - 1].type === "NGMicrosyntaxKeyedExpression" && a.body[u - 1].key.name === "then" || r.key.name === "track")) && a.body[0].type === "NGMicrosyntaxExpression";
2312
+ return [n("key"), o ? " " : ": ", n("expression")];
2313
+ }
2314
+ case "NGMicrosyntaxLet":
2315
+ return ["let ", n("key"), r.value === null ? "" : [" = ", n("value")]];
2316
+ case "NGMicrosyntaxAs":
2317
+ return [n("key"), " as ", n("alias")];
2318
+ default:
2319
+ throw new ft(r, "Angular");
2320
+ }
2321
+ }
2322
+ function Sr({ node: e, index: t }) {
2323
+ return e.type === "NGMicrosyntaxKeyedExpression" && e.key.name === "of" && t === 1;
2324
+ }
2325
+ var Vp = q(["CallExpression", "OptionalCallExpression", "AssignmentExpression"]);
2326
+ function Kp({ node: e }) {
2327
+ return gn(e, Vp);
2328
+ }
2329
+ function Nu(e, t, n) {
2330
+ let { node: r } = e;
2331
+ return m([N(T, e.map(n, "decorators")), Iu(r, t) ? A : T]);
2332
+ }
2333
+ function Hp(e, t, n) {
2334
+ return ju(e.node) ? [N(A, e.map(n, "declaration", "decorators")), A] : "";
2335
+ }
2336
+ function zp(e, t, n) {
2337
+ let { node: r, parent: u } = e, { decorators: a } = r;
2338
+ if (!O(a) || ju(u) || Pu(e)) return "";
2339
+ let o = r.type === "ClassExpression" || r.type === "ClassDeclaration" || Iu(r, t);
2340
+ return [e.key === "declaration" && $o(u) ? A : o ? Se : "", N(T, e.map(n, "decorators")), T];
2341
+ }
2342
+ function Iu(e, t) {
2343
+ return e.decorators.some((n) => ie(t.originalText, I(n)));
2344
+ }
2345
+ function ju(e) {
2346
+ var t;
2347
+ if (e.type !== "ExportDefaultDeclaration" && e.type !== "ExportNamedDeclaration" && e.type !== "DeclareExportDeclaration") return !1;
2348
+ let n = (t = e.declaration) == null ? void 0 : t.decorators;
2349
+ return O(n) && Yt(e, n[0]);
2350
+ }
2351
+ var Ht = class extends Error {
2352
+ constructor() {
2353
+ super(...arguments);
2354
+ Ot(this, "name", "ArgExpansionBailout");
2355
+ }
2356
+ };
2357
+ function Qp(e, t, n) {
2358
+ let { node: r } = e, u = ye(r);
2359
+ if (u.length === 0) return ["(", X(e, t), ")"];
2360
+ let a = u.length - 1;
2361
+ if (el(u)) {
2362
+ let c = ["("];
2363
+ return Vt(e, (s, D) => {
2364
+ c.push(n()), D !== a && c.push(", ");
2365
+ }), c.push(")"), c;
2366
+ }
2367
+ let o = !1, i = [];
2368
+ Vt(e, ({ node: c }, s) => {
2369
+ let D = n();
2370
+ s === a || (Pe(c, t) ? (o = !0, D = [D, ",", A, A]) : D = [D, ",", T]), i.push(D);
2371
+ });
2372
+ let p = r.type === "ImportExpression" || r.callee.type === "Import", l = !t.parser.startsWith("__ng_") && !p && ke(t, "all") ? "," : "";
2373
+ function d() {
2374
+ return m(["(", g([T, ...i]), l, T, ")"], { shouldBreak: !0 });
2375
+ }
2376
+ if (o || e.parent.type !== "Decorator" && Yo(u)) return d();
2377
+ if (Zp(u)) {
2378
+ let c = i.slice(1);
2379
+ if (c.some(te)) return d();
2380
+ let s;
2381
+ try {
2382
+ s = n(yr(r, 0), { expandFirstArg: !0 });
2383
+ } catch (D) {
2384
+ if (D instanceof Ht) return d();
2385
+ throw D;
2386
+ }
2387
+ return te(s) ? [Se, Re([["(", m(s, { shouldBreak: !0 }), ", ", ...c, ")"], d()])] : Re([["(", s, ", ", ...c, ")"], ["(", m(s, { shouldBreak: !0 }), ", ", ...c, ")"], d()]);
2388
+ }
2389
+ if (Yp(u, i, t)) {
2390
+ let c = i.slice(0, -1);
2391
+ if (c.some(te)) return d();
2392
+ let s;
2393
+ try {
2394
+ s = n(yr(r, -1), { expandLastArg: !0 });
2395
+ } catch (D) {
2396
+ if (D instanceof Ht) return d();
2397
+ throw D;
2398
+ }
2399
+ return te(s) ? [Se, Re([["(", ...c, m(s, { shouldBreak: !0 }), ")"], d()])] : Re([["(", ...c, s, ")"], ["(", ...c, m(s, { shouldBreak: !0 }), ")"], d()]);
2400
+ }
2401
+ let y = ["(", g([E, ...i]), P(l), E, ")"];
2402
+ return Yr(e) ? y : m(y, { shouldBreak: i.some(te) || o });
2403
+ }
2404
+ function St(e, t = !1) {
2405
+ return Ae(e) && (e.properties.length > 0 || x(e)) || Q(e) && (e.elements.length > 0 || x(e)) || e.type === "TSTypeAssertion" && St(e.expression) || he(e) && St(e.expression) || e.type === "FunctionExpression" || e.type === "ArrowFunctionExpression" && (!e.returnType || !e.returnType.typeAnnotation || e.returnType.typeAnnotation.type !== "TSTypeReference" || tl(e.body)) && (e.body.type === "BlockStatement" || e.body.type === "ArrowFunctionExpression" && St(e.body, !0) || Ae(e.body) || Q(e.body) || !t && (L(e.body) || e.body.type === "ConditionalExpression") || V(e.body)) || e.type === "DoExpression" || e.type === "ModuleExpression";
2406
+ }
2407
+ function Yp(e, t, n) {
2408
+ var r, u;
2409
+ let a = M(!1, e, -1);
2410
+ if (e.length === 1) {
2411
+ let i = M(!1, t, -1);
2412
+ if ((r = i.label) != null && r.embed && ((u = i.label) == null ? void 0 : u.hug) !== !1) return !0;
2413
+ }
2414
+ let o = M(!1, e, -2);
2415
+ return !x(a, S.Leading) && !x(a, S.Trailing) && St(a) && (!o || o.type !== a.type) && (e.length !== 2 || o.type !== "ArrowFunctionExpression" || !Q(a)) && !(e.length > 1 && oa(a, n));
2416
+ }
2417
+ function Zp(e) {
2418
+ if (e.length !== 2) return !1;
2419
+ let [t, n] = e;
2420
+ return t.type === "ModuleExpression" && nl(n) ? !0 : !x(t) && (t.type === "FunctionExpression" || t.type === "ArrowFunctionExpression" && t.body.type === "BlockStatement") && n.type !== "FunctionExpression" && n.type !== "ArrowFunctionExpression" && n.type !== "ConditionalExpression" && Lu(n) && !St(n);
2421
+ }
2422
+ function Lu(e) {
2423
+ if (e.type === "ParenthesizedExpression") return Lu(e.expression);
2424
+ if (he(e) || e.type === "TypeCastExpression") {
2425
+ let { typeAnnotation: t } = e;
2426
+ if (t.type === "TypeAnnotation" && (t = t.typeAnnotation), t.type === "TSArrayType" && (t = t.elementType, t.type === "TSArrayType" && (t = t.elementType)), t.type === "GenericTypeAnnotation" || t.type === "TSTypeReference") {
2427
+ let n = t.typeArguments ?? t.typeParameters;
2428
+ (n == null ? void 0 : n.params.length) === 1 && (t = n.params[0]);
2429
+ }
2430
+ return Xn(t) && Ee(e.expression, 1);
2431
+ }
2432
+ return lt(e) && ye(e).length > 1 ? !1 : Be(e) ? Ee(e.left, 1) && Ee(e.right, 1) : Gr(e) || Ee(e);
2433
+ }
2434
+ function el(e) {
2435
+ return e.length === 2 ? br(e, 0) : e.length === 3 ? e[0].type === "Identifier" && br(e, 1) : !1;
2436
+ }
2437
+ function br(e, t) {
2438
+ let n = e[t], r = e[t + 1];
2439
+ return n.type === "ArrowFunctionExpression" && Z(n).length === 0 && n.body.type === "BlockStatement" && r.type === "ArrayExpression" && !e.some((u) => x(u));
2440
+ }
2441
+ function tl(e) {
2442
+ return e.type === "BlockStatement" && (e.body.some((t) => t.type !== "EmptyStatement") || x(e, S.Dangling));
2443
+ }
2444
+ function nl(e) {
2445
+ return e.type === "ObjectExpression" && e.properties.length === 1 && we(e.properties[0]) && e.properties[0].key.type === "Identifier" && e.properties[0].key.name === "type" && re(e.properties[0].value) && e.properties[0].value.value === "module";
2446
+ }
2447
+ var wn = Qp, rl = (e) => ((e.type === "ChainExpression" || e.type === "TSNonNullExpression") && (e = e.expression), L(e) && ye(e).length > 0);
2448
+ function ul(e, t, n) {
2449
+ var r;
2450
+ let u = n("object"), a = Mu(e, t, n), { node: o } = e, i = e.findAncestor((d) => !(W(d) || d.type === "TSNonNullExpression")), p = e.findAncestor((d) => !(d.type === "ChainExpression" || d.type === "TSNonNullExpression")), l = i && (i.type === "NewExpression" || i.type === "BindExpression" || i.type === "AssignmentExpression" && i.left.type !== "Identifier") || o.computed || o.object.type === "Identifier" && o.property.type === "Identifier" && !W(p) || (p.type === "AssignmentExpression" || p.type === "VariableDeclarator") && (rl(o.object) || ((r = u.label) == null ? void 0 : r.memberChain));
2451
+ return wt(u.label, [u, l ? a : m(g([E, a]))]);
2452
+ }
2453
+ function Mu(e, t, n) {
2454
+ let r = n("property"), { node: u } = e, a = ne(e);
2455
+ return u.computed ? !u.property || be(u.property) ? [a, "[", r, "]"] : m([a, "[", g([E, r]), E, "]"]) : [a, ".", r];
2456
+ }
2457
+ function Ou(e, t, n) {
2458
+ if (e.node.type === "ChainExpression") return e.call(() => Ou(e, t, n), "expression");
2459
+ let { parent: r } = e, u = !r || r.type === "ExpressionStatement", a = [];
2460
+ function o(v) {
2461
+ let { originalText: J } = t, G = Nt(J, I(v));
2462
+ return J.charAt(G) === ")" ? G !== !1 && Jn(J, G + 1) : Pe(v, t);
2463
+ }
2464
+ function i(v) {
2465
+ let { node: J } = v;
2466
+ if (J.type === "ChainExpression") return v.call(() => i(v), "expression");
2467
+ if (L(J) && (ut(J.callee) || L(J.callee))) {
2468
+ let G = o(J);
2469
+ a.unshift({ node: J, hasTrailingEmptyLine: G, printed: [Fe(v, [ne(v), Ve(v, t, n), wn(v, t, n)], t), G ? A : ""] }), v.call((de) => i(de), "callee");
2470
+ } else ut(J) ? (a.unshift({ node: J, needsParens: et(v, t), printed: Fe(v, W(J) ? Mu(v, t, n) : ua(v, t, n), t) }), v.call((G) => i(G), "object")) : J.type === "TSNonNullExpression" ? (a.unshift({ node: J, printed: Fe(v, "!", t) }), v.call((G) => i(G), "expression")) : a.unshift({ node: J, printed: n() });
2471
+ }
2472
+ let { node: p } = e;
2473
+ a.unshift({ node: p, printed: [ne(e), Ve(e, t, n), wn(e, t, n)] }), p.callee && e.call((v) => i(v), "callee");
2474
+ let l = [], d = [a[0]], y = 1;
2475
+ for (; y < a.length && (a[y].node.type === "TSNonNullExpression" || L(a[y].node) || W(a[y].node) && a[y].node.computed && be(a[y].node.property)); ++y) d.push(a[y]);
2476
+ if (!L(a[0].node)) for (; y + 1 < a.length && ut(a[y].node) && ut(a[y + 1].node); ++y) d.push(a[y]);
2477
+ l.push(d), d = [];
2478
+ let c = !1;
2479
+ for (; y < a.length; ++y) {
2480
+ if (c && ut(a[y].node)) {
2481
+ if (a[y].node.computed && be(a[y].node.property)) {
2482
+ d.push(a[y]);
2483
+ continue;
2484
+ }
2485
+ l.push(d), d = [], c = !1;
2486
+ }
2487
+ (L(a[y].node) || a[y].node.type === "ImportExpression") && (c = !0), d.push(a[y]), x(a[y].node, S.Trailing) && (l.push(d), d = [], c = !1);
2488
+ }
2489
+ d.length > 0 && l.push(d);
2490
+ function s(v) {
2491
+ return /^[A-Z]|^[$_]+$/u.test(v);
2492
+ }
2493
+ function D(v) {
2494
+ return v.length <= t.tabWidth;
2495
+ }
2496
+ function f(v) {
2497
+ var J;
2498
+ let G = (J = v[1][0]) == null ? void 0 : J.node.computed;
2499
+ if (v[0].length === 1) {
2500
+ let Xe = v[0][0].node;
2501
+ return Xe.type === "ThisExpression" || Xe.type === "Identifier" && (s(Xe.name) || u && D(Xe.name) || G);
2502
+ }
2503
+ let de = M(!1, v[0], -1).node;
2504
+ return W(de) && de.property.type === "Identifier" && (s(de.property.name) || G);
2505
+ }
2506
+ let C = l.length >= 2 && !x(l[1][0].node) && f(l);
2507
+ function F(v) {
2508
+ let J = v.map((G) => G.printed);
2509
+ return v.length > 0 && M(!1, v, -1).needsParens ? ["(", ...J, ")"] : J;
2510
+ }
2511
+ function B(v) {
2512
+ return v.length === 0 ? "" : g([A, N(A, v.map(F))]);
2513
+ }
2514
+ let b = l.map(F), w = b, k = C ? 3 : 2, h = l.flat(), j = h.slice(1, -1).some((v) => x(v.node, S.Leading)) || h.slice(0, -1).some((v) => x(v.node, S.Trailing)) || l[k] && x(l[k][0].node, S.Leading);
2515
+ if (l.length <= k && !j && !l.some((v) => M(!1, v, -1).hasTrailingEmptyLine)) return Yr(e) ? w : m(w);
2516
+ let ue = M(!1, l[C ? 1 : 0], -1).node, _ = !L(ue) && o(ue), K = [F(l[0]), C ? l.slice(1, 2).map(F) : "", _ ? A : "", B(l.slice(C ? 2 : 1))], U = a.map(({ node: v }) => v).filter(L);
2517
+ function nt() {
2518
+ let v = M(!1, M(!1, l, -1), -1).node, J = M(!1, b, -1);
2519
+ return L(v) && te(J) && U.slice(0, -1).some((G) => G.arguments.some(Bt));
2520
+ }
2521
+ let Ft;
2522
+ return j || U.length > 2 && U.some((v) => !v.arguments.every((J) => Ee(J))) || b.slice(0, -1).some(te) || nt() ? Ft = m(K) : Ft = [te(w) || _ ? Se : "", Re([w, K])], wt({ memberChain: !0 }, Ft);
2523
+ }
2524
+ var al = Ou;
2525
+ function Ju(e, t, n) {
2526
+ var r;
2527
+ let { node: u } = e, a = u.type === "NewExpression", o = u.type === "ImportExpression", i = ne(e), p = ye(u), l = p.length === 1 && zr(p[0], t.originalText);
2528
+ if (l || ol(e) || tn(u, e.parent)) {
2529
+ let y = [];
2530
+ if (Vt(e, () => {
2531
+ y.push(n());
2532
+ }), !(l && (r = y[0].label) != null && r.embed)) return [a ? "new " : "", Br(e, n), i, Ve(e, t, n), "(", N(", ", y), ")"];
2533
+ }
2534
+ if (!o && !a && ut(u.callee) && !e.call((y) => et(y, t), "callee", ...u.callee.type === "ChainExpression" ? ["expression"] : [])) return al(e, t, n);
2535
+ let d = [a ? "new " : "", Br(e, n), i, Ve(e, t, n), wn(e, t, n)];
2536
+ return o || L(u.callee) ? m(d) : d;
2537
+ }
2538
+ function Br(e, t) {
2539
+ let { node: n } = e;
2540
+ return n.type === "ImportExpression" ? `import${n.phase ? `.${n.phase}` : ""}` : t("callee");
2541
+ }
2542
+ function ol(e) {
2543
+ let { node: t } = e;
2544
+ if (t.type !== "CallExpression" || t.optional || t.callee.type !== "Identifier") return !1;
2545
+ let n = ye(t);
2546
+ return t.callee.name === "require" ? n.length === 1 && re(n[0]) || n.length > 1 : t.callee.name === "define" && e.parent.type === "ExpressionStatement" ? n.length === 1 || n.length === 2 && n[0].type === "ArrayExpression" || n.length === 3 && re(n[0]) && n[1].type === "ArrayExpression" : !1;
2547
+ }
2548
+ function It(e, t, n, r, u, a) {
2549
+ let o = pl(e, t, n, r, a), i = a ? n(a, { assignmentLayout: o }) : "";
2550
+ switch (o) {
2551
+ case "break-after-operator":
2552
+ return m([m(r), u, m(g([T, i]))]);
2553
+ case "never-break-after-operator":
2554
+ return m([m(r), u, " ", i]);
2555
+ case "fluid": {
2556
+ let p = Symbol("assignment");
2557
+ return m([m(r), u, m(g(T), { id: p }), ve, rn(i, { groupId: p })]);
2558
+ }
2559
+ case "break-lhs":
2560
+ return m([r, u, " ", m(i)]);
2561
+ case "chain":
2562
+ return [m(r), u, T, i];
2563
+ case "chain-tail":
2564
+ return [m(r), u, g([T, i])];
2565
+ case "chain-tail-arrow-chain":
2566
+ return [m(r), u, i];
2567
+ case "only-left":
2568
+ return r;
2569
+ }
2570
+ }
2571
+ function il(e, t, n) {
2572
+ let { node: r } = e;
2573
+ return It(e, t, n, n("left"), [" ", r.operator], "right");
2574
+ }
2575
+ function sl(e, t, n) {
2576
+ return It(e, t, n, n("id"), " =", "init");
2577
+ }
2578
+ function pl(e, t, n, r, u) {
2579
+ let { node: a } = e, o = a[u];
2580
+ if (!o) return "only-left";
2581
+ let i = !Wt(o);
2582
+ if (e.match(Wt, qu, (d) => !i || d.type !== "ExpressionStatement" && d.type !== "VariableDeclaration")) return i ? o.type === "ArrowFunctionExpression" && o.body.type === "ArrowFunctionExpression" ? "chain-tail-arrow-chain" : "chain-tail" : "chain";
2583
+ if (!i && Wt(o.right) || We(t.originalText, o)) return "break-after-operator";
2584
+ if (a.type === "ImportAttribute" || o.type === "CallExpression" && o.callee.name === "require" || t.parser === "json5" || t.parser === "jsonc" || t.parser === "json") return "never-break-after-operator";
2585
+ let p = hi(r);
2586
+ if (cl(a) || ml(a) || _u(a) && p) return "break-lhs";
2587
+ let l = El(a, r, t);
2588
+ return e.call(() => ll(e, t, n, l), u) ? "break-after-operator" : Dl(a) ? "break-lhs" : !p && (l || o.type === "TemplateLiteral" || o.type === "TaggedTemplateExpression" || o.type === "BooleanLiteral" || be(o) || o.type === "ClassExpression") ? "never-break-after-operator" : "fluid";
2589
+ }
2590
+ function ll(e, t, n, r) {
2591
+ let u = e.node;
2592
+ if (Be(u) && !Pt(u)) return !0;
2593
+ switch (u.type) {
2594
+ case "StringLiteralTypeAnnotation":
2595
+ case "SequenceExpression":
2596
+ return !0;
2597
+ case "TSConditionalType":
2598
+ case "ConditionalTypeAnnotation":
2599
+ if (!t.experimentalTernaries && !gl(u)) break;
2600
+ return !0;
2601
+ case "ConditionalExpression": {
2602
+ if (!t.experimentalTernaries) {
2603
+ let { test: l } = u;
2604
+ return Be(l) && !Pt(l);
2605
+ }
2606
+ let { consequent: i, alternate: p } = u;
2607
+ return i.type === "ConditionalExpression" || p.type === "ConditionalExpression";
2608
+ }
2609
+ case "ClassExpression":
2610
+ return O(u.decorators);
2611
+ }
2612
+ if (r) return !1;
2613
+ let a = u, o = [];
2614
+ for (; ; ) if (a.type === "UnaryExpression" || a.type === "AwaitExpression" || a.type === "YieldExpression" && a.argument !== null) a = a.argument, o.push("argument");
2615
+ else if (a.type === "TSNonNullExpression") a = a.expression, o.push("expression");
2616
+ else break;
2617
+ return !!(re(a) || e.call(() => Xu(e, t, n), ...o));
2618
+ }
2619
+ function cl(e) {
2620
+ if (qu(e)) {
2621
+ let t = e.left || e.id;
2622
+ return t.type === "ObjectPattern" && t.properties.length > 2 && t.properties.some((n) => {
2623
+ var r;
2624
+ return we(n) && (!n.shorthand || ((r = n.value) == null ? void 0 : r.type) === "AssignmentPattern");
2625
+ });
2626
+ }
2627
+ return !1;
2628
+ }
2629
+ function Wt(e) {
2630
+ return e.type === "AssignmentExpression";
2631
+ }
2632
+ function qu(e) {
2633
+ return Wt(e) || e.type === "VariableDeclarator";
2634
+ }
2635
+ function Dl(e) {
2636
+ let t = dl(e);
2637
+ if (O(t)) {
2638
+ let n = e.type === "TSTypeAliasDeclaration" ? "constraint" : "bound";
2639
+ if (t.length > 1 && t.some((r) => r[n] || r.default)) return !0;
2640
+ }
2641
+ return !1;
2642
+ }
2643
+ var yl = q(["TSTypeAliasDeclaration", "TypeAlias"]);
2644
+ function dl(e) {
2645
+ var t;
2646
+ if (yl(e)) return (t = e.typeParameters) == null ? void 0 : t.params;
2647
+ }
2648
+ function ml(e) {
2649
+ if (e.type !== "VariableDeclarator") return !1;
2650
+ let { typeAnnotation: t } = e.id;
2651
+ if (!t || !t.typeAnnotation) return !1;
2652
+ let n = vr(t.typeAnnotation);
2653
+ return O(n) && n.length > 1 && n.some((r) => O(vr(r)) || r.type === "TSConditionalType");
2654
+ }
2655
+ function _u(e) {
2656
+ var t;
2657
+ return e.type === "VariableDeclarator" && ((t = e.init) == null ? void 0 : t.type) === "ArrowFunctionExpression";
2658
+ }
2659
+ var fl = q(["TSTypeReference", "GenericTypeAnnotation"]);
2660
+ function vr(e) {
2661
+ var t;
2662
+ if (fl(e)) return (t = e.typeArguments ?? e.typeParameters) == null ? void 0 : t.params;
2663
+ }
2664
+ function Xu(e, t, n, r = !1) {
2665
+ var u;
2666
+ let { node: a } = e, o = () => Xu(e, t, n, !0);
2667
+ if (a.type === "ChainExpression" || a.type === "TSNonNullExpression") return e.call(o, "expression");
2668
+ if (L(a)) {
2669
+ if ((u = Ju(e, t, n).label) != null && u.memberChain) return !1;
2670
+ let i = ye(a);
2671
+ return !(i.length === 0 || i.length === 1 && $n(i[0], t)) || Fl(a, n) ? !1 : e.call(o, "callee");
2672
+ }
2673
+ return W(a) ? e.call(o, "object") : r && (a.type === "Identifier" || a.type === "ThisExpression");
2674
+ }
2675
+ function El(e, t, n) {
2676
+ return we(e) ? (t = Un(t), typeof t == "string" && ot(t) < n.tabWidth + 3) : !1;
2677
+ }
2678
+ function Fl(e, t) {
2679
+ let n = Al(e);
2680
+ if (O(n)) {
2681
+ if (n.length > 1) return !0;
2682
+ if (n.length === 1) {
2683
+ let u = n[0];
2684
+ if (Ue(u) || eu(u) || u.type === "TSTypeLiteral" || u.type === "ObjectTypeAnnotation") return !0;
2685
+ }
2686
+ let r = e.typeParameters ? "typeParameters" : "typeArguments";
2687
+ if (te(t(r))) return !0;
2688
+ }
2689
+ return !1;
2690
+ }
2691
+ function Al(e) {
2692
+ var t;
2693
+ return (t = e.typeParameters ?? e.typeArguments) == null ? void 0 : t.params;
2694
+ }
2695
+ function gl(e) {
2696
+ function t(n) {
2697
+ switch (n.type) {
2698
+ case "FunctionTypeAnnotation":
2699
+ case "GenericTypeAnnotation":
2700
+ case "TSFunctionType":
2701
+ return !!n.typeParameters;
2702
+ case "TSTypeReference":
2703
+ return !!(n.typeArguments ?? n.typeParameters);
2704
+ default:
2705
+ return !1;
2706
+ }
2707
+ }
2708
+ return t(e.checkType) || t(e.extendsType);
2709
+ }
2710
+ function tt(e, t, n, r, u) {
2711
+ let a = e.node, o = Z(a), i = u ? Ve(e, n, t) : "";
2712
+ if (o.length === 0) return [i, "(", X(e, n, { filter: (s) => ge(n.originalText, I(s)) === ")" }), ")"];
2713
+ let { parent: p } = e, l = tn(p), d = $u(a), y = [];
2714
+ if (ui(e, (s, D) => {
2715
+ let f = D === o.length - 1;
2716
+ f && a.rest && y.push("..."), y.push(t()), !f && (y.push(","), l || d ? y.push(" ") : Pe(o[D], n) ? y.push(A, A) : y.push(T));
2717
+ }), r && !hl(e)) {
2718
+ if (te(i) || te(y)) throw new Ht();
2719
+ return m([hn(i), "(", hn(y), ")"]);
2720
+ }
2721
+ let c = o.every((s) => !O(s.decorators));
2722
+ return d && c ? [i, "(", ...y, ")"] : l ? [i, "(", ...y, ")"] : (Vr(p) || Go(p) || p.type === "TypeAlias" || p.type === "UnionTypeAnnotation" || p.type === "IntersectionTypeAnnotation" || p.type === "FunctionTypeAnnotation" && p.returnType === a) && o.length === 1 && o[0].name === null && a.this !== o[0] && o[0].typeAnnotation && a.typeParameters === null && Xn(o[0].typeAnnotation) && !a.rest ? n.arrowParens === "always" || a.type === "HookTypeAnnotation" ? ["(", ...y, ")"] : y : [i, "(", g([E, ...y]), P(!ri(a) && ke(n, "all") ? "," : ""), E, ")"];
2723
+ }
2724
+ function $u(e) {
2725
+ if (!e) return !1;
2726
+ let t = Z(e);
2727
+ if (t.length !== 1) return !1;
2728
+ let [n] = t;
2729
+ return !x(n) && (n.type === "ObjectPattern" || n.type === "ArrayPattern" || n.type === "Identifier" && n.typeAnnotation && (n.typeAnnotation.type === "TypeAnnotation" || n.typeAnnotation.type === "TSTypeAnnotation") && Le(n.typeAnnotation.typeAnnotation) || n.type === "FunctionTypeParam" && Le(n.typeAnnotation) && n !== e.rest || n.type === "AssignmentPattern" && (n.left.type === "ObjectPattern" || n.left.type === "ArrayPattern") && (n.right.type === "Identifier" || Ae(n.right) && n.right.properties.length === 0 || Q(n.right) && n.right.elements.length === 0));
2730
+ }
2731
+ function Cl(e) {
2732
+ let t;
2733
+ return e.returnType ? (t = e.returnType, t.typeAnnotation && (t = t.typeAnnotation)) : e.typeAnnotation && (t = e.typeAnnotation), t;
2734
+ }
2735
+ function Et(e, t) {
2736
+ var n;
2737
+ let r = Cl(e);
2738
+ if (!r) return !1;
2739
+ let u = (n = e.typeParameters) == null ? void 0 : n.params;
2740
+ if (u) {
2741
+ if (u.length > 1) return !1;
2742
+ if (u.length === 1) {
2743
+ let a = u[0];
2744
+ if (a.constraint || a.default) return !1;
2745
+ }
2746
+ }
2747
+ return Z(e).length === 1 && (Le(r) || te(t));
2748
+ }
2749
+ function hl(e) {
2750
+ return e.match((t) => t.type === "ArrowFunctionExpression" && t.body.type === "BlockStatement", (t, n) => {
2751
+ if (t.type === "CallExpression" && n === "arguments" && t.arguments.length === 1 && t.callee.type === "CallExpression") {
2752
+ let r = t.callee.callee;
2753
+ return r.type === "Identifier" || r.type === "MemberExpression" && !r.computed && r.object.type === "Identifier" && r.property.type === "Identifier";
2754
+ }
2755
+ return !1;
2756
+ }, (t, n) => t.type === "VariableDeclarator" && n === "init" || t.type === "ExportDefaultDeclaration" && n === "declaration" || t.type === "TSExportAssignment" && n === "expression" || t.type === "AssignmentExpression" && n === "right" && t.left.type === "MemberExpression" && t.left.object.type === "Identifier" && t.left.object.name === "module" && t.left.property.type === "Identifier" && t.left.property.name === "exports", (t) => t.type !== "VariableDeclaration" || t.kind === "const" && t.declarations.length === 1);
2757
+ }
2758
+ function xl(e) {
2759
+ let t = Z(e);
2760
+ return t.length > 1 && t.some((n) => n.type === "TSParameterProperty");
2761
+ }
2762
+ var Tl = q(["VoidTypeAnnotation", "TSVoidKeyword", "NullLiteralTypeAnnotation", "TSNullKeyword"]), Sl = q(["ObjectTypeAnnotation", "TSTypeLiteral", "GenericTypeAnnotation", "TSTypeReference"]);
2763
+ function bl(e) {
2764
+ let { types: t } = e;
2765
+ if (t.some((r) => x(r))) return !1;
2766
+ let n = t.find((r) => Sl(r));
2767
+ return n ? t.every((r) => r === n || Tl(r)) : !1;
2768
+ }
2769
+ function Ru(e) {
2770
+ return Xn(e) || Le(e) ? !0 : Ue(e) ? bl(e) : !1;
2771
+ }
2772
+ function Bl(e, t, n) {
2773
+ let r = t.semi ? ";" : "", { node: u } = e, a = [oe(e), "opaque type ", n("id"), n("typeParameters")];
2774
+ return u.supertype && a.push(": ", n("supertype")), u.impltype && a.push(" = ", n("impltype")), a.push(r), a;
2775
+ }
2776
+ function Wu(e, t, n) {
2777
+ let r = t.semi ? ";" : "", { node: u } = e, a = [oe(e)];
2778
+ a.push("type ", n("id"), n("typeParameters"));
2779
+ let o = u.type === "TSTypeAliasDeclaration" ? "typeAnnotation" : "right";
2780
+ return [It(e, t, n, a, " =", o), r];
2781
+ }
2782
+ function Uu(e, t, n) {
2783
+ let r = !1;
2784
+ return m(e.map(({ isFirst: u, previous: a, node: o, index: i }) => {
2785
+ let p = n();
2786
+ if (u) return p;
2787
+ let l = Le(o), d = Le(a);
2788
+ return d && l ? [" & ", r ? g(p) : p] : !d && !l ? g([" &", T, p]) : (i > 1 && (r = !0), [" & ", i > 1 ? g(p) : p]);
2789
+ }, "types"));
2790
+ }
2791
+ function Gu(e, t, n) {
2792
+ let { node: r } = e, { parent: u } = e, a = u.type !== "TypeParameterInstantiation" && (u.type !== "TSConditionalType" || !t.experimentalTernaries) && (u.type !== "ConditionalTypeAnnotation" || !t.experimentalTernaries) && u.type !== "TSTypeParameterInstantiation" && u.type !== "GenericTypeAnnotation" && u.type !== "TSTypeReference" && u.type !== "TSTypeAssertion" && u.type !== "TupleTypeAnnotation" && u.type !== "TSTupleType" && !(u.type === "FunctionTypeParam" && !u.name && e.grandparent.this !== u) && !((u.type === "TypeAlias" || u.type === "VariableDeclarator" || u.type === "TSTypeAliasDeclaration") && We(t.originalText, r)), o = Ru(r), i = e.map((d) => {
2793
+ let y = n();
2794
+ return o || (y = Te(2, y)), Fe(d, y, t);
2795
+ }, "types");
2796
+ if (o) return N(" | ", i);
2797
+ let p = a && !We(t.originalText, r), l = [P([p ? T : "", "| "]), N([T, "| "], i)];
2798
+ return et(e, t) ? m([g(l), E]) : (u.type === "TupleTypeAnnotation" || u.type === "TSTupleType") && u[u.type === "TupleTypeAnnotation" && u.types ? "types" : "elementTypes"].length > 1 ? m([g([P(["(", E]), l]), E, P(")")]) : m(a ? g(l) : l);
2799
+ }
2800
+ function vl(e) {
2801
+ var t;
2802
+ let { node: n, parent: r } = e;
2803
+ return n.type === "FunctionTypeAnnotation" && (Vr(r) || !((r.type === "ObjectTypeProperty" || r.type === "ObjectTypeInternalSlot") && !r.variance && !r.optional && Yt(r, n) || r.type === "ObjectTypeCallProperty" || ((t = e.getParentNode(2)) == null ? void 0 : t.type) === "DeclareFunction"));
2804
+ }
2805
+ function Vu(e, t, n) {
2806
+ let { node: r } = e, u = [un(e)];
2807
+ (r.type === "TSConstructorType" || r.type === "TSConstructSignatureDeclaration") && u.push("new ");
2808
+ let a = tt(e, n, t, !1, !0), o = [];
2809
+ return r.type === "FunctionTypeAnnotation" ? o.push(vl(e) ? " => " : ": ", n("returnType")) : o.push(z(e, n, r.returnType ? "returnType" : "typeAnnotation")), Et(r, o) && (a = m(a)), u.push(a, o), m(u);
2810
+ }
2811
+ function Ku(e, t, n) {
2812
+ return [n("objectType"), ne(e), "[", n("indexType"), "]"];
2813
+ }
2814
+ function Hu(e, t, n) {
2815
+ return ["infer ", n("typeParameter")];
2816
+ }
2817
+ function kr(e, t, n) {
2818
+ let { node: r } = e;
2819
+ return [r.postfix ? "" : n, z(e, t), r.postfix ? n : ""];
2820
+ }
2821
+ function zu(e, t, n) {
2822
+ let { node: r } = e;
2823
+ return ["...", ...r.type === "TupleTypeSpreadElement" && r.label ? [n("label"), ": "] : [], n("typeAnnotation")];
2824
+ }
2825
+ function Qu(e, t, n) {
2826
+ let { node: r } = e;
2827
+ return [r.variance ? n("variance") : "", n("label"), r.optional ? "?" : "", ": ", n("elementType")];
2828
+ }
2829
+ var kl = /* @__PURE__ */ new WeakSet();
2830
+ function z(e, t, n = "typeAnnotation") {
2831
+ let { node: { [n]: r } } = e;
2832
+ if (!r) return "";
2833
+ let u = !1;
2834
+ if (r.type === "TSTypeAnnotation" || r.type === "TypeAnnotation") {
2835
+ let a = e.call(Yu, n);
2836
+ (a === "=>" || a === ":" && x(r, S.Leading)) && (u = !0), kl.add(r);
2837
+ }
2838
+ return u ? [" ", t(n)] : t(n);
2839
+ }
2840
+ var Yu = (e) => e.match((t) => t.type === "TSTypeAnnotation", (t, n) => (n === "returnType" || n === "typeAnnotation") && (t.type === "TSFunctionType" || t.type === "TSConstructorType")) ? "=>" : e.match((t) => t.type === "TSTypeAnnotation", (t, n) => n === "typeAnnotation" && (t.type === "TSJSDocNullableType" || t.type === "TSJSDocNonNullableType" || t.type === "TSTypePredicate")) || e.match((t) => t.type === "TypeAnnotation", (t, n) => n === "typeAnnotation" && t.type === "Identifier", (t, n) => n === "id" && t.type === "DeclareFunction") || e.match((t) => t.type === "TypeAnnotation", (t, n) => n === "typeAnnotation" && t.type === "Identifier", (t, n) => n === "id" && t.type === "DeclareHook") || e.match((t) => t.type === "TypeAnnotation", (t, n) => n === "bound" && t.type === "TypeParameter" && t.usesExtendsBound) ? "" : ":";
2841
+ function Zu(e, t, n) {
2842
+ let r = Yu(e);
2843
+ return r ? [r, " ", n("typeAnnotation")] : n("typeAnnotation");
2844
+ }
2845
+ function ea(e) {
2846
+ return [e("elementType"), "[]"];
2847
+ }
2848
+ function ta({ node: e }, t) {
2849
+ let n = e.type === "TSTypeQuery" ? "exprName" : "argument", r = e.type === "TypeofTypeAnnotation" || e.typeArguments ? "typeArguments" : "typeParameters";
2850
+ return ["typeof ", t(n), t(r)];
2851
+ }
2852
+ function na(e, t) {
2853
+ let { node: n } = e;
2854
+ return [n.type === "TSTypePredicate" && n.asserts ? "asserts " : n.type === "TypePredicate" && n.kind ? `${n.kind} ` : "", t("parameterName"), n.typeAnnotation ? [" is ", z(e, t)] : ""];
2855
+ }
2856
+ function ne(e) {
2857
+ let { node: t } = e;
2858
+ return !t.optional || t.type === "Identifier" && t === e.parent.key ? "" : L(t) || W(t) && t.computed || t.type === "OptionalIndexedAccessType" ? "?." : "?";
2859
+ }
2860
+ function ra(e) {
2861
+ return e.node.definite || e.match(void 0, (t, n) => n === "id" && t.type === "VariableDeclarator" && t.definite) ? "!" : "";
2862
+ }
2863
+ var Pl = /* @__PURE__ */ new Set(["DeclareClass", "DeclareComponent", "DeclareFunction", "DeclareHook", "DeclareVariable", "DeclareExportDeclaration", "DeclareExportAllDeclaration", "DeclareOpaqueType", "DeclareTypeAlias", "DeclareEnum", "DeclareInterface"]);
2864
+ function oe(e) {
2865
+ let { node: t } = e;
2866
+ return t.declare || Pl.has(t.type) && e.parent.type !== "DeclareExportDeclaration" ? "declare " : "";
2867
+ }
2868
+ var wl = /* @__PURE__ */ new Set(["TSAbstractMethodDefinition", "TSAbstractPropertyDefinition", "TSAbstractAccessorProperty"]);
2869
+ function un({ node: e }) {
2870
+ return e.abstract || wl.has(e.type) ? "abstract " : "";
2871
+ }
2872
+ function Ve(e, t, n) {
2873
+ let r = e.node;
2874
+ return r.typeArguments ? n("typeArguments") : r.typeParameters ? n("typeParameters") : "";
2875
+ }
2876
+ function ua(e, t, n) {
2877
+ return ["::", n("callee")];
2878
+ }
2879
+ function Ie(e, t, n) {
2880
+ return e.type === "EmptyStatement" ? ";" : e.type === "BlockStatement" || n ? [" ", t] : g([T, t]);
2881
+ }
2882
+ function aa(e, t) {
2883
+ return ["...", t("argument"), z(e, t)];
2884
+ }
2885
+ function zt(e) {
2886
+ return e.accessibility ? e.accessibility + " " : "";
2887
+ }
2888
+ function Nl(e, t, n, r) {
2889
+ let { node: u } = e, a = u.inexact ? "..." : "";
2890
+ return x(u, S.Dangling) ? m([n, a, X(e, t, { indent: !0 }), E, r]) : [n, a, r];
2891
+ }
2892
+ function Zn(e, t, n) {
2893
+ let { node: r } = e, u = [], a = r.type === "TupleExpression" ? "#[" : "[", o = "]", i = r.type === "TupleTypeAnnotation" && r.types ? "types" : r.type === "TSTupleType" || r.type === "TupleTypeAnnotation" ? "elementTypes" : "elements", p = r[i];
2894
+ if (p.length === 0) u.push(Nl(e, t, a, o));
2895
+ else {
2896
+ let l = M(!1, p, -1), d = (l == null ? void 0 : l.type) !== "RestElement" && !r.inexact, y = l === null, c = Symbol("array"), s = !t.__inJestEach && p.length > 1 && p.every((C, F, B) => {
2897
+ let b = C == null ? void 0 : C.type;
2898
+ if (!Q(C) && !Ae(C)) return !1;
2899
+ let w = B[F + 1];
2900
+ if (w && b !== w.type) return !1;
2901
+ let k = Q(C) ? "elements" : "properties";
2902
+ return C[k] && C[k].length > 1;
2903
+ }), D = oa(r, t), f = d ? y ? "," : ke(t) ? D ? P(",", "", { groupId: c }) : P(",") : "" : "";
2904
+ u.push(m([a, g([E, D ? jl(e, t, n, f) : [Il(e, t, i, r.inexact, n), f], X(e, t)]), E, o], { shouldBreak: s, id: c }));
2905
+ }
2906
+ return u.push(ne(e), z(e, n)), u;
2907
+ }
2908
+ function oa(e, t) {
2909
+ return Q(e) && e.elements.length > 1 && e.elements.every((n) => n && (be(n) || Ur(n) && !x(n.argument)) && !x(n, S.Trailing | S.Line, (r) => !ie(t.originalText, $(r), { backwards: !0 })));
2910
+ }
2911
+ function ia({ node: e }, { originalText: t }) {
2912
+ let n = (u) => Mn(t, On(t, u)), r = (u) => t[u] === "," ? u : r(n(u + 1));
2913
+ return Jn(t, r(I(e)));
2914
+ }
2915
+ function Il(e, t, n, r, u) {
2916
+ let a = [];
2917
+ return e.each(({ node: o, isLast: i }) => {
2918
+ a.push(o ? m(u()) : ""), (!i || r) && a.push([",", T, o && ia(e, t) ? E : ""]);
2919
+ }, n), r && a.push("..."), a;
2920
+ }
2921
+ function jl(e, t, n, r) {
2922
+ let u = [];
2923
+ return e.each(({ isLast: a, next: o }) => {
2924
+ u.push([n(), a ? r : ","]), a || u.push(ia(e, t) ? [A, A] : x(o, S.Leading | S.Line) ? A : T);
2925
+ }, "elements"), Wn(u);
2926
+ }
2927
+ var sa = new Proxy(() => {
2928
+ }, { get: () => sa }), pa = sa, Ll = /^[\$A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC][\$0-9A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]*$/, Ml = (e) => Ll.test(e), Ol = Ml;
2929
+ function Jl(e) {
2930
+ return e.length === 1 ? e : e.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(?=\d)/u, "$1$2").replace(/^([+-]?[\d.]+)e[+-]?0+$/u, "$1").replace(/^([+-])?\./u, "$10.").replace(/(\.\d+?)0+(?=e|$)/u, "$1").replace(/\.(?=e|$)/u, "");
2931
+ }
2932
+ var je = Jl, Ut = /* @__PURE__ */ new WeakMap();
2933
+ function la(e) {
2934
+ return /^(?:\d+|\d+\.\d+)$/u.test(e);
2935
+ }
2936
+ function Pr(e, t) {
2937
+ return t.parser === "json" || t.parser === "jsonc" || !re(e.key) || pt(pe(e.key), t).slice(1, -1) !== e.key.value ? !1 : !!(Ol(e.key.value) && !(t.parser === "babel-ts" && e.type === "ClassProperty" || t.parser === "typescript" && e.type === "PropertyDefinition") || la(e.key.value) && String(Number(e.key.value)) === e.key.value && e.type !== "ImportAttribute" && (t.parser === "babel" || t.parser === "acorn" || t.parser === "espree" || t.parser === "meriyah" || t.parser === "__babel_estree"));
2938
+ }
2939
+ function ql(e, t) {
2940
+ let { key: n } = e.node;
2941
+ return (n.type === "Identifier" || be(n) && la(je(pe(n))) && String(n.value) === je(pe(n)) && !(t.parser === "typescript" || t.parser === "babel-ts")) && (t.parser === "json" || t.parser === "jsonc" || t.quoteProps === "consistent" && Ut.get(e.parent));
2942
+ }
2943
+ function jt(e, t, n) {
2944
+ let { node: r } = e;
2945
+ if (r.computed) return ["[", n("key"), "]"];
2946
+ let { parent: u } = e, { key: a } = r;
2947
+ if (t.quoteProps === "consistent" && !Ut.has(u)) {
2948
+ let o = e.siblings.some((i) => !i.computed && re(i.key) && !Pr(i, t));
2949
+ Ut.set(u, o);
2950
+ }
2951
+ if (ql(e, t)) {
2952
+ let o = pt(JSON.stringify(a.type === "Identifier" ? a.name : a.value.toString()), t);
2953
+ return e.call((i) => Fe(i, o, t), "key");
2954
+ }
2955
+ return Pr(r, t) && (t.quoteProps === "as-needed" || t.quoteProps === "consistent" && !Ut.get(u)) ? e.call((o) => Fe(o, /^\d/u.test(a.value) ? je(a.value) : a.value, t), "key") : n("key");
2956
+ }
2957
+ function mn(e, t, n) {
2958
+ let { node: r } = e;
2959
+ return r.shorthand ? n("value") : It(e, t, n, jt(e, t, n), ":", "value");
2960
+ }
2961
+ var _l = ({ node: e, key: t, parent: n }) => t === "value" && e.type === "FunctionExpression" && (n.type === "ObjectMethod" || n.type === "ClassMethod" || n.type === "ClassPrivateMethod" || n.type === "MethodDefinition" || n.type === "TSAbstractMethodDefinition" || n.type === "TSDeclareMethod" || n.type === "Property" && en(n));
2962
+ function ca(e, t, n, r) {
2963
+ if (_l(e)) return er(e, n, t);
2964
+ let { node: u } = e, a = !1;
2965
+ if ((u.type === "FunctionDeclaration" || u.type === "FunctionExpression") && r != null && r.expandLastArg) {
2966
+ let { parent: d } = e;
2967
+ L(d) && (ye(d).length > 1 || Z(u).every((y) => y.type === "Identifier" && !y.typeAnnotation)) && (a = !0);
2968
+ }
2969
+ let o = [oe(e), u.async ? "async " : "", `function${u.generator ? "*" : ""} `, u.id ? t("id") : ""], i = tt(e, t, n, a), p = an(e, t), l = Et(u, p);
2970
+ return o.push(Ve(e, n, t), m([l ? m(i) : i, p]), u.body ? " " : "", t("body")), n.semi && (u.declare || !u.body) && o.push(";"), o;
2971
+ }
2972
+ function Nn(e, t, n) {
2973
+ let { node: r } = e, { kind: u } = r, a = r.value || r, o = [];
2974
+ return !u || u === "init" || u === "method" || u === "constructor" ? a.async && o.push("async ") : (pa.ok(u === "get" || u === "set"), o.push(u, " ")), a.generator && o.push("*"), o.push(jt(e, t, n), r.optional || r.key.optional ? "?" : "", r === a ? er(e, t, n) : n("value")), o;
2975
+ }
2976
+ function er(e, t, n) {
2977
+ let { node: r } = e, u = tt(e, n, t), a = an(e, n), o = xl(r), i = Et(r, a), p = [Ve(e, t, n), m([o ? m(u, { shouldBreak: !0 }) : i ? m(u) : u, a])];
2978
+ return r.body ? p.push(" ", n("body")) : p.push(t.semi ? ";" : ""), p;
2979
+ }
2980
+ function Xl(e) {
2981
+ let t = Z(e);
2982
+ return t.length === 1 && !e.typeParameters && !x(e, S.Dangling) && t[0].type === "Identifier" && !t[0].typeAnnotation && !x(t[0]) && !t[0].optional && !e.predicate && !e.returnType;
2983
+ }
2984
+ function Da(e, t) {
2985
+ if (t.arrowParens === "always") return !1;
2986
+ if (t.arrowParens === "avoid") {
2987
+ let { node: n } = e;
2988
+ return Xl(n);
2989
+ }
2990
+ return !1;
2991
+ }
2992
+ function an(e, t) {
2993
+ let { node: n } = e, r = [z(e, t, "returnType")];
2994
+ return n.predicate && r.push(t("predicate")), r;
2995
+ }
2996
+ function ya(e, t, n) {
2997
+ let { node: r } = e, u = t.semi ? ";" : "", a = [];
2998
+ if (r.argument) {
2999
+ let p = n("argument");
3000
+ Wl(t, r.argument) ? p = ["(", g([A, p]), A, ")"] : (Be(r.argument) || r.argument.type === "SequenceExpression" || t.experimentalTernaries && r.argument.type === "ConditionalExpression" && (r.argument.consequent.type === "ConditionalExpression" || r.argument.alternate.type === "ConditionalExpression")) && (p = m([P("("), g([E, p]), E, P(")")])), a.push(" ", p);
3001
+ }
3002
+ let o = x(r, S.Dangling), i = u && o && x(r, S.Last | S.Line);
3003
+ return i && a.push(u), o && a.push(" ", X(e, t)), i || a.push(u), a;
3004
+ }
3005
+ function $l(e, t, n) {
3006
+ return ["return", ya(e, t, n)];
3007
+ }
3008
+ function Rl(e, t, n) {
3009
+ return ["throw", ya(e, t, n)];
3010
+ }
3011
+ function Wl(e, t) {
3012
+ if (We(e.originalText, t) || x(t, S.Leading, (n) => Oe(e.originalText, $(n), I(n))) && !V(t)) return !0;
3013
+ if (qn(t)) {
3014
+ let n = t, r;
3015
+ for (; r = Xo(n); ) if (n = r, We(e.originalText, n)) return !0;
3016
+ }
3017
+ return !1;
3018
+ }
3019
+ var fn = /* @__PURE__ */ new WeakMap();
3020
+ function da(e) {
3021
+ return fn.has(e) || fn.set(e, e.type === "ConditionalExpression" && !ee(e, (t) => t.type === "ObjectExpression")), fn.get(e);
3022
+ }
3023
+ var ma = (e) => e.type === "SequenceExpression";
3024
+ function Ul(e, t, n, r = {}) {
3025
+ let u = [], a, o = [], i = !1, p = !r.expandLastArg && e.node.body.type === "ArrowFunctionExpression", l;
3026
+ (function C() {
3027
+ let { node: F } = e, B = Gl(e, t, n, r);
3028
+ if (u.length === 0) u.push(B);
3029
+ else {
3030
+ let { leading: b, trailing: w } = ku(e, t);
3031
+ u.push([b, B]), o.unshift(w);
3032
+ }
3033
+ p && (i || (i = F.returnType && Z(F).length > 0 || F.typeParameters || Z(F).some((b) => b.type !== "Identifier"))), !p || F.body.type !== "ArrowFunctionExpression" ? (a = n("body", r), l = F.body) : e.call(C, "body");
3034
+ })();
3035
+ let d = !We(t.originalText, l) && (ma(l) || Vl(l, a, t) || !i && da(l)), y = e.key === "callee" && lt(e.parent), c = Symbol("arrow-chain"), s = Kl(e, r, { signatureDocs: u, shouldBreak: i }), D, f = !1;
3036
+ return p && (y || r.assignmentLayout) && (f = !0, D = r.assignmentLayout === "chain-tail-arrow-chain" || y && !d), a = Hl(e, t, r, { bodyDoc: a, bodyComments: o, functionBody: l, shouldPutBodyOnSameLine: d }), m([m(f ? g([E, s]) : s, { shouldBreak: D, id: c }), " =>", p ? rn(a, { groupId: c }) : m(a), p && y ? P(E, "", { groupId: c }) : ""]);
3037
+ }
3038
+ function Gl(e, t, n, r) {
3039
+ let { node: u } = e, a = [];
3040
+ if (u.async && a.push("async "), Da(e, t)) a.push(n(["params", 0]));
3041
+ else {
3042
+ let i = r.expandLastArg || r.expandFirstArg, p = an(e, n);
3043
+ if (i) {
3044
+ if (te(p)) throw new Ht();
3045
+ p = m(hn(p));
3046
+ }
3047
+ a.push(m([tt(e, n, t, i, !0), p]));
3048
+ }
3049
+ let o = X(e, t, { filter(i) {
3050
+ let p = Nt(t.originalText, I(i));
3051
+ return p !== !1 && t.originalText.slice(p, p + 2) === "=>";
3052
+ } });
3053
+ return o && a.push(" ", o), a;
3054
+ }
3055
+ function Vl(e, t, n) {
3056
+ var r, u;
3057
+ return Q(e) || Ae(e) || e.type === "ArrowFunctionExpression" || e.type === "DoExpression" || e.type === "BlockStatement" || V(e) || ((r = t.label) == null ? void 0 : r.hug) !== !1 && (((u = t.label) == null ? void 0 : u.embed) || zr(e, n.originalText));
3058
+ }
3059
+ function Kl(e, t, { signatureDocs: n, shouldBreak: r }) {
3060
+ if (n.length === 1) return n[0];
3061
+ let { parent: u, key: a } = e;
3062
+ return a !== "callee" && lt(u) || Be(u) ? m([n[0], " =>", g([T, N([" =>", T], n.slice(1))])], { shouldBreak: r }) : a === "callee" && lt(u) || t.assignmentLayout ? m(N([" =>", T], n), { shouldBreak: r }) : m(g(N([" =>", T], n)), { shouldBreak: r });
3063
+ }
3064
+ function Hl(e, t, n, { bodyDoc: r, bodyComments: u, functionBody: a, shouldPutBodyOnSameLine: o }) {
3065
+ let { node: i, parent: p } = e, l = n.expandLastArg && ke(t, "all") ? P(",") : "", d = (n.expandLastArg || p.type === "JSXExpressionContainer") && !x(i) ? E : "";
3066
+ return o && da(a) ? [" ", m([P("", "("), g([E, r]), P("", ")"), l, d]), u] : (ma(a) && (r = m(["(", g([E, r]), E, ")"])), o ? [" ", r, u] : [g([T, r, u]), l, d]);
3067
+ }
3068
+ var zl = (e, t, n) => {
3069
+ if (!(e && t == null)) {
3070
+ if (t.findLast) return t.findLast(n);
3071
+ for (let r = t.length - 1; r >= 0; r--) {
3072
+ let u = t[r];
3073
+ if (n(u, r, t)) return u;
3074
+ }
3075
+ }
3076
+ }, Ql = zl;
3077
+ function In(e, t, n, r) {
3078
+ let { node: u } = e, a = [], o = Ql(!1, u[r], (i) => i.type !== "EmptyStatement");
3079
+ return e.each(({ node: i }) => {
3080
+ i.type !== "EmptyStatement" && (a.push(n()), i !== o && (a.push(A), Pe(i, t) && a.push(A)));
3081
+ }, r), a;
3082
+ }
3083
+ function fa(e, t, n) {
3084
+ let r = Yl(e, t, n), { node: u, parent: a } = e;
3085
+ if (u.type === "Program" && (a == null ? void 0 : a.type) !== "ModuleExpression") return r ? [r, A] : "";
3086
+ let o = [];
3087
+ if (u.type === "StaticBlock" && o.push("static "), o.push("{"), r) o.push(g([A, r]), A);
3088
+ else {
3089
+ let i = e.grandparent;
3090
+ a.type === "ArrowFunctionExpression" || a.type === "FunctionExpression" || a.type === "FunctionDeclaration" || a.type === "ComponentDeclaration" || a.type === "HookDeclaration" || a.type === "ObjectMethod" || a.type === "ClassMethod" || a.type === "ClassPrivateMethod" || a.type === "ForStatement" || a.type === "WhileStatement" || a.type === "DoWhileStatement" || a.type === "DoExpression" || a.type === "ModuleExpression" || a.type === "CatchClause" && !i.finalizer || a.type === "TSModuleDeclaration" || u.type === "StaticBlock" || o.push(A);
3091
+ }
3092
+ return o.push("}"), o;
3093
+ }
3094
+ function Yl(e, t, n) {
3095
+ let { node: r } = e, u = O(r.directives), a = r.body.some((p) => p.type !== "EmptyStatement"), o = x(r, S.Dangling);
3096
+ if (!u && !a && !o) return "";
3097
+ let i = [];
3098
+ return u && (i.push(In(e, t, n, "directives")), (a || o) && (i.push(A), Pe(M(!1, r.directives, -1), t) && i.push(A))), a && i.push(In(e, t, n, "body")), o && i.push(X(e, t)), i;
3099
+ }
3100
+ function Zl(e) {
3101
+ let t = /* @__PURE__ */ new WeakMap();
3102
+ return function(n) {
3103
+ return t.has(n) || t.set(n, Symbol(e)), t.get(n);
3104
+ };
3105
+ }
3106
+ var Ea = Zl;
3107
+ function ec(e) {
3108
+ switch (e) {
3109
+ case null:
3110
+ return "";
3111
+ case "PlusOptional":
3112
+ return "+?";
3113
+ case "MinusOptional":
3114
+ return "-?";
3115
+ case "Optional":
3116
+ return "?";
3117
+ }
3118
+ }
3119
+ function tc(e, t, n) {
3120
+ let { node: r } = e;
3121
+ return m([r.variance ? n("variance") : "", "[", g([n("keyTparam"), " in ", n("sourceType")]), "]", ec(r.optional), ": ", n("propType")]);
3122
+ }
3123
+ function Fa(e, t) {
3124
+ return e === "+" || e === "-" ? e + t : t;
3125
+ }
3126
+ function nc(e, t, n) {
3127
+ let { node: r } = e, u = Oe(t.originalText, $(r), $(r.typeParameter));
3128
+ return m(["{", g([t.bracketSpacing ? T : E, m([n("typeParameter"), r.optional ? Fa(r.optional, "?") : "", r.typeAnnotation ? ": " : "", n("typeAnnotation")]), t.semi ? P(";") : ""]), X(e, t), t.bracketSpacing ? T : E, "}"], { shouldBreak: u });
3129
+ }
3130
+ var tr = Ea("typeParameters");
3131
+ function rc(e, t, n) {
3132
+ let { node: r } = e;
3133
+ return Z(r).length === 1 && r.type.startsWith("TS") && !r[n][0].constraint && e.parent.type === "ArrowFunctionExpression" && !(t.filepath && /\.ts$/u.test(t.filepath));
3134
+ }
3135
+ function bt(e, t, n, r) {
3136
+ let { node: u } = e;
3137
+ if (!u[r]) return "";
3138
+ if (!Array.isArray(u[r])) return n(r);
3139
+ let a = tn(e.grandparent), o = e.match((p) => !(p[r].length === 1 && Le(p[r][0])), void 0, (p, l) => l === "typeAnnotation", (p) => p.type === "Identifier", _u);
3140
+ if (u[r].length === 0 || !o && (a || u[r].length === 1 && (u[r][0].type === "NullableTypeAnnotation" || Ru(u[r][0])))) return ["<", N(", ", e.map(n, r)), uc(e, t), ">"];
3141
+ let i = u.type === "TSTypeParameterInstantiation" ? "" : rc(e, t, r) ? "," : ke(t) ? P(",") : "";
3142
+ return m(["<", g([E, N([",", T], e.map(n, r))]), i, E, ">"], { id: tr(u) });
3143
+ }
3144
+ function uc(e, t) {
3145
+ let { node: n } = e;
3146
+ if (!x(n, S.Dangling)) return "";
3147
+ let r = !x(n, S.Line), u = X(e, t, { indent: !r });
3148
+ return r ? u : [u, A];
3149
+ }
3150
+ function Aa(e, t, n) {
3151
+ let { node: r, parent: u } = e, a = [r.type === "TSTypeParameter" && r.const ? "const " : ""], o = r.type === "TSTypeParameter" ? n("name") : r.name;
3152
+ if (u.type === "TSMappedType") return u.readonly && a.push(Fa(u.readonly, "readonly"), " "), a.push("[", o), r.constraint && a.push(" in ", n("constraint")), u.nameType && a.push(" as ", e.callParent(() => n("nameType"))), a.push("]"), a;
3153
+ if (r.variance && a.push(n("variance")), r.in && a.push("in "), r.out && a.push("out "), a.push(o), r.bound && (r.usesExtendsBound && a.push(" extends "), a.push(z(e, n, "bound"))), r.constraint) {
3154
+ let i = Symbol("constraint");
3155
+ a.push(" extends", m(g(T), { id: i }), ve, rn(n("constraint"), { groupId: i }));
3156
+ }
3157
+ return r.default && a.push(" = ", n("default")), m(a);
3158
+ }
3159
+ var ga = q(["ClassProperty", "PropertyDefinition", "ClassPrivateProperty", "ClassAccessorProperty", "AccessorProperty", "TSAbstractPropertyDefinition", "TSAbstractAccessorProperty"]);
3160
+ function Ca(e, t, n) {
3161
+ let { node: r } = e, u = [oe(e), un(e), "class"], a = x(r.id, S.Trailing) || x(r.typeParameters, S.Trailing) || x(r.superClass) || O(r.extends) || O(r.mixins) || O(r.implements), o = [], i = [];
3162
+ if (r.id && o.push(" ", n("id")), o.push(n("typeParameters")), r.superClass) {
3163
+ let p = [oc(e, t, n), n(r.superTypeArguments ? "superTypeArguments" : "superTypeParameters")], l = e.call((d) => ["extends ", Fe(d, p, t)], "superClass");
3164
+ a ? i.push(T, m(l)) : i.push(" ", l);
3165
+ } else i.push(En(e, t, n, "extends"));
3166
+ if (i.push(En(e, t, n, "mixins"), En(e, t, n, "implements")), a) {
3167
+ let p;
3168
+ Ta(r) ? p = [...o, g(i)] : p = g([...o, i]), u.push(m(p, { id: ha(r) }));
3169
+ } else u.push(...o, ...i);
3170
+ return u.push(" ", n("body")), u;
3171
+ }
3172
+ var ha = Ea("heritageGroup");
3173
+ function xa(e) {
3174
+ return P(A, "", { groupId: ha(e) });
3175
+ }
3176
+ function ac(e) {
3177
+ return ["extends", "mixins", "implements"].reduce((t, n) => t + (Array.isArray(e[n]) ? e[n].length : 0), e.superClass ? 1 : 0) > 1;
3178
+ }
3179
+ function Ta(e) {
3180
+ return e.typeParameters && !x(e.typeParameters, S.Trailing | S.Line) && !ac(e);
3181
+ }
3182
+ function En(e, t, n, r) {
3183
+ let { node: u } = e;
3184
+ if (!O(u[r])) return "";
3185
+ let a = X(e, t, { marker: r });
3186
+ return [Ta(u) ? P(" ", T, { groupId: tr(u.typeParameters) }) : T, a, a && A, r, m(g([T, N([",", T], e.map(n, r))]))];
3187
+ }
3188
+ function oc(e, t, n) {
3189
+ let r = n("superClass"), { parent: u } = e;
3190
+ return u.type === "AssignmentExpression" ? m(P(["(", g([E, r]), E, ")"], r)) : r;
3191
+ }
3192
+ function Sa(e, t, n) {
3193
+ let { node: r } = e, u = [];
3194
+ return O(r.decorators) && u.push(Nu(e, t, n)), u.push(zt(r)), r.static && u.push("static "), u.push(un(e)), r.override && u.push("override "), u.push(Nn(e, t, n)), u;
3195
+ }
3196
+ function ba(e, t, n) {
3197
+ let { node: r } = e, u = [], a = t.semi ? ";" : "";
3198
+ O(r.decorators) && u.push(Nu(e, t, n)), u.push(zt(r), oe(e)), r.static && u.push("static "), u.push(un(e)), r.override && u.push("override "), r.readonly && u.push("readonly "), r.variance && u.push(n("variance")), (r.type === "ClassAccessorProperty" || r.type === "AccessorProperty" || r.type === "TSAbstractAccessorProperty") && u.push("accessor "), u.push(jt(e, t, n), ne(e), ra(e), z(e, n));
3199
+ let o = r.type === "TSAbstractPropertyDefinition" || r.type === "TSAbstractAccessorProperty";
3200
+ return [It(e, t, n, u, " =", o ? void 0 : "value"), a];
3201
+ }
3202
+ function ic(e, t, n) {
3203
+ let { node: r } = e, u = [];
3204
+ return e.each(({ node: a, next: o, isLast: i }) => {
3205
+ u.push(n()), !t.semi && ga(a) && sc(a, o) && u.push(";"), i || (u.push(A), Pe(a, t) && u.push(A));
3206
+ }, "body"), x(r, S.Dangling) && u.push(X(e, t)), [O(r.body) ? xa(e.parent) : "", "{", u.length > 0 ? [g([A, u]), A] : "", "}"];
3207
+ }
3208
+ function sc(e, t) {
3209
+ var n;
3210
+ let { type: r, name: u } = e.key;
3211
+ if (!e.computed && r === "Identifier" && (u === "static" || u === "get" || u === "set") && !e.value && !e.typeAnnotation) return !0;
3212
+ if (!t || t.static || t.accessibility || t.readonly) return !1;
3213
+ if (!t.computed) {
3214
+ let a = (n = t.key) == null ? void 0 : n.name;
3215
+ if (a === "in" || a === "instanceof") return !0;
3216
+ }
3217
+ if (ga(t) && t.variance && !t.static && !t.declare) return !0;
3218
+ switch (t.type) {
3219
+ case "ClassProperty":
3220
+ case "PropertyDefinition":
3221
+ case "TSAbstractPropertyDefinition":
3222
+ return t.computed;
3223
+ case "MethodDefinition":
3224
+ case "TSAbstractMethodDefinition":
3225
+ case "ClassMethod":
3226
+ case "ClassPrivateMethod": {
3227
+ if ((t.value ? t.value.async : t.async) || t.kind === "get" || t.kind === "set") return !1;
3228
+ let a = t.value ? t.value.generator : t.generator;
3229
+ return !!(t.computed || a);
3230
+ }
3231
+ case "TSIndexSignature":
3232
+ return !0;
3233
+ }
3234
+ return !1;
3235
+ }
3236
+ function pc(e, t) {
3237
+ if (t.semi || va(e, t) || Pa(e, t)) return !1;
3238
+ let { node: n, key: r, parent: u } = e;
3239
+ return !!(n.type === "ExpressionStatement" && (r === "body" && (u.type === "Program" || u.type === "BlockStatement" || u.type === "StaticBlock" || u.type === "TSModuleBlock") || r === "consequent" && u.type === "SwitchCase") && e.call(() => Ba(e, t), "expression"));
3240
+ }
3241
+ function Ba(e, t) {
3242
+ let { node: n } = e;
3243
+ switch (n.type) {
3244
+ case "ParenthesizedExpression":
3245
+ case "TypeCastExpression":
3246
+ case "ArrayExpression":
3247
+ case "ArrayPattern":
3248
+ case "TemplateLiteral":
3249
+ case "TemplateElement":
3250
+ case "RegExpLiteral":
3251
+ return !0;
3252
+ case "ArrowFunctionExpression":
3253
+ if (!Da(e, t)) return !0;
3254
+ break;
3255
+ case "UnaryExpression": {
3256
+ let { prefix: r, operator: u } = n;
3257
+ if (r && (u === "+" || u === "-")) return !0;
3258
+ break;
3259
+ }
3260
+ case "BindExpression":
3261
+ if (!n.object) return !0;
3262
+ break;
3263
+ case "Literal":
3264
+ if (n.regex) return !0;
3265
+ break;
3266
+ default:
3267
+ if (V(n)) return !0;
3268
+ }
3269
+ return et(e, t) ? !0 : qn(n) ? e.call(() => Ba(e, t), ...Wr(n)) : !1;
3270
+ }
3271
+ function va({ node: e, parent: t }, n) {
3272
+ return (n.parentParser === "markdown" || n.parentParser === "mdx") && e.type === "ExpressionStatement" && V(e.expression) && t.type === "Program" && t.body.length === 1;
3273
+ }
3274
+ function ka(e) {
3275
+ switch (e.type) {
3276
+ case "MemberExpression":
3277
+ switch (e.property.type) {
3278
+ case "Identifier":
3279
+ case "NumericLiteral":
3280
+ case "StringLiteral":
3281
+ return ka(e.object);
3282
+ }
3283
+ return !1;
3284
+ case "Identifier":
3285
+ return !0;
3286
+ default:
3287
+ return !1;
3288
+ }
3289
+ }
3290
+ function Pa({ node: e, parent: t }, n) {
3291
+ return (n.parser === "__vue_event_binding" || n.parser === "__vue_ts_event_binding") && e.type === "ExpressionStatement" && t.type === "Program" && t.body.length === 1;
3292
+ }
3293
+ function lc(e, t, n) {
3294
+ let r = [n("expression")];
3295
+ return Pa(e, t) ? ka(e.node.expression) && r.push(";") : va(e, t) || t.semi && r.push(";"), r;
3296
+ }
3297
+ function cc(e, t, n) {
3298
+ if (t.__isVueBindings || t.__isVueForBindingLeft) {
3299
+ let r = e.map(n, "program", "body", 0, "params");
3300
+ if (r.length === 1) return r[0];
3301
+ let u = N([",", T], r);
3302
+ return t.__isVueForBindingLeft ? ["(", g([E, m(u)]), E, ")"] : u;
3303
+ }
3304
+ if (t.__isEmbeddedTypescriptGenericParameters) {
3305
+ let r = e.map(n, "program", "body", 0, "typeParameters", "params");
3306
+ return N([",", T], r);
3307
+ }
3308
+ }
3309
+ function Dc(e, t) {
3310
+ let { node: n } = e;
3311
+ switch (n.type) {
3312
+ case "RegExpLiteral":
3313
+ return wr(n);
3314
+ case "BigIntLiteral":
3315
+ return jn(n.extra.raw);
3316
+ case "NumericLiteral":
3317
+ return je(n.extra.raw);
3318
+ case "StringLiteral":
3319
+ return Ge(pt(n.extra.raw, t));
3320
+ case "NullLiteral":
3321
+ return "null";
3322
+ case "BooleanLiteral":
3323
+ return String(n.value);
3324
+ case "DecimalLiteral":
3325
+ return je(n.value) + "m";
3326
+ case "DirectiveLiteral":
3327
+ return Nr(n.extra.raw, t);
3328
+ case "Literal": {
3329
+ if (n.regex) return wr(n.regex);
3330
+ if (n.bigint) return jn(n.raw);
3331
+ if (n.decimal) return je(n.decimal) + "m";
3332
+ let { value: r } = n;
3333
+ return typeof r == "number" ? je(n.raw) : typeof r == "string" ? yc(e) ? Nr(n.raw, t) : Ge(pt(n.raw, t)) : String(r);
3334
+ }
3335
+ }
3336
+ }
3337
+ function yc(e) {
3338
+ if (e.key !== "expression") return;
3339
+ let { parent: t } = e;
3340
+ return t.type === "ExpressionStatement" && t.directive;
3341
+ }
3342
+ function jn(e) {
3343
+ return e.toLowerCase();
3344
+ }
3345
+ function wr({ pattern: e, flags: t }) {
3346
+ return t = [...t].sort().join(""), `/${e}/${t}`;
3347
+ }
3348
+ function Nr(e, t) {
3349
+ let n = e.slice(1, -1);
3350
+ if (n.includes('"') || n.includes("'")) return e;
3351
+ let r = t.singleQuote ? "'" : '"';
3352
+ return r + n + r;
3353
+ }
3354
+ function dc(e, t, n) {
3355
+ let r = e.originalText.slice(t, n);
3356
+ for (let u of e[Symbol.for("comments")]) {
3357
+ let a = $(u);
3358
+ if (a > n) break;
3359
+ let o = I(u);
3360
+ if (o < t) continue;
3361
+ let i = o - a;
3362
+ r = r.slice(0, a - t) + " ".repeat(i) + r.slice(o - t);
3363
+ }
3364
+ return r;
3365
+ }
3366
+ var nr = dc;
3367
+ function mc(e, t, n) {
3368
+ let { node: r } = e;
3369
+ return ["import", r.module ? " module" : "", r.phase ? ` ${r.phase}` : "", Ia(r), La(e, t, n), ja(e, t, n), Oa(e, t, n), t.semi ? ";" : ""];
3370
+ }
3371
+ var wa = (e) => e.type === "ExportDefaultDeclaration" || e.type === "DeclareExportDeclaration" && e.default;
3372
+ function Na(e, t, n) {
3373
+ let { node: r } = e, u = [Hp(e, t, n), oe(e), "export", wa(r) ? " default" : ""], { declaration: a, exported: o } = r;
3374
+ return x(r, S.Dangling) && (u.push(" ", X(e, t)), Qr(r) && u.push(A)), a ? u.push(" ", n("declaration")) : (u.push(Fc(r)), r.type === "ExportAllDeclaration" || r.type === "DeclareExportAllDeclaration" ? (u.push(" *"), o && u.push(" as ", n("exported"))) : u.push(La(e, t, n)), u.push(ja(e, t, n), Oa(e, t, n))), u.push(Ec(r, t)), u;
3375
+ }
3376
+ var fc = q(["ClassDeclaration", "ComponentDeclaration", "FunctionDeclaration", "TSInterfaceDeclaration", "DeclareClass", "DeclareComponent", "DeclareFunction", "DeclareHook", "HookDeclaration", "TSDeclareFunction", "EnumDeclaration"]);
3377
+ function Ec(e, t) {
3378
+ return t.semi && (!e.declaration || wa(e) && !fc(e.declaration)) ? ";" : "";
3379
+ }
3380
+ function rr(e, t = !0) {
3381
+ return e && e !== "value" ? `${t ? " " : ""}${e}${t ? "" : " "}` : "";
3382
+ }
3383
+ function Ia(e, t) {
3384
+ return rr(e.importKind, t);
3385
+ }
3386
+ function Fc(e) {
3387
+ return rr(e.exportKind);
3388
+ }
3389
+ function ja(e, t, n) {
3390
+ let { node: r } = e;
3391
+ if (!r.source) return "";
3392
+ let u = [];
3393
+ return Ma(r, t) && u.push(" from"), u.push(" ", n("source")), u;
3394
+ }
3395
+ function La(e, t, n) {
3396
+ let { node: r } = e;
3397
+ if (!Ma(r, t)) return "";
3398
+ let u = [" "];
3399
+ if (O(r.specifiers)) {
3400
+ let a = [], o = [];
3401
+ e.each(() => {
3402
+ let i = e.node.type;
3403
+ if (i === "ExportNamespaceSpecifier" || i === "ExportDefaultSpecifier" || i === "ImportNamespaceSpecifier" || i === "ImportDefaultSpecifier") a.push(n());
3404
+ else if (i === "ExportSpecifier" || i === "ImportSpecifier") o.push(n());
3405
+ else throw new ft(r, "specifier");
3406
+ }, "specifiers"), u.push(N(", ", a)), o.length > 0 && (a.length > 0 && u.push(", "), o.length > 1 || a.length > 0 || r.specifiers.some((i) => x(i)) ? u.push(m(["{", g([t.bracketSpacing ? T : E, N([",", T], o)]), P(ke(t) ? "," : ""), t.bracketSpacing ? T : E, "}"])) : u.push(["{", t.bracketSpacing ? " " : "", ...o, t.bracketSpacing ? " " : "", "}"]));
3407
+ } else u.push("{}");
3408
+ return u;
3409
+ }
3410
+ function Ma(e, t) {
3411
+ return e.type !== "ImportDeclaration" || O(e.specifiers) || e.importKind === "type" ? !0 : nr(t, $(e), $(e.source)).trimEnd().endsWith("from");
3412
+ }
3413
+ function Ac(e, t) {
3414
+ var n, r;
3415
+ if ((n = e.extra) != null && n.deprecatedAssertSyntax) return "assert";
3416
+ let u = nr(t, I(e.source), (r = e.attributes) != null && r[0] ? $(e.attributes[0]) : I(e)).trimStart();
3417
+ return u.startsWith("assert") ? "assert" : u.startsWith("with") || O(e.attributes) ? "with" : void 0;
3418
+ }
3419
+ function Oa(e, t, n) {
3420
+ let { node: r } = e;
3421
+ if (!r.source) return "";
3422
+ let u = Ac(r, t);
3423
+ if (!u) return "";
3424
+ let a = [` ${u} {`];
3425
+ return O(r.attributes) && (t.bracketSpacing && a.push(" "), a.push(N(", ", e.map(n, "attributes"))), t.bracketSpacing && a.push(" ")), a.push("}"), a;
3426
+ }
3427
+ function gc(e, t, n) {
3428
+ let { node: r } = e, { type: u } = r, a = u.startsWith("Import"), o = a ? "imported" : "local", i = a ? "local" : "exported", p = r[o], l = r[i], d = "", y = "";
3429
+ return u === "ExportNamespaceSpecifier" || u === "ImportNamespaceSpecifier" ? d = "*" : p && (d = n(o)), l && !Cc(r) && (y = n(i)), [rr(u === "ImportSpecifier" ? r.importKind : r.exportKind, !1), d, d && y ? " as " : "", y];
3430
+ }
3431
+ function Cc(e) {
3432
+ if (e.type !== "ImportSpecifier" && e.type !== "ExportSpecifier") return !1;
3433
+ let { local: t, [e.type === "ImportSpecifier" ? "imported" : "exported"]: n } = e;
3434
+ if (t.type !== n.type || !vo(t, n)) return !1;
3435
+ if (re(t)) return t.value === n.value && pe(t) === pe(n);
3436
+ switch (t.type) {
3437
+ case "Identifier":
3438
+ return t.name === n.name;
3439
+ default:
3440
+ return !1;
3441
+ }
3442
+ }
3443
+ function on(e, t, n) {
3444
+ var r;
3445
+ let u = t.semi ? ";" : "", { node: a } = e, o = a.type === "ObjectTypeAnnotation", i = a.type === "TSEnumDeclaration" || a.type === "EnumBooleanBody" || a.type === "EnumNumberBody" || a.type === "EnumBigIntBody" || a.type === "EnumStringBody" || a.type === "EnumSymbolBody", p = [a.type === "TSTypeLiteral" || i ? "members" : a.type === "TSInterfaceBody" ? "body" : "properties"];
3446
+ o && p.push("indexers", "callProperties", "internalSlots");
3447
+ let l = p.flatMap((h) => e.map(({ node: j }) => ({ node: j, printed: n(), loc: $(j) }), h));
3448
+ p.length > 1 && l.sort((h, j) => h.loc - j.loc);
3449
+ let { parent: d, key: y } = e, c = o && y === "body" && (d.type === "InterfaceDeclaration" || d.type === "DeclareInterface" || d.type === "DeclareClass"), s = a.type === "TSInterfaceBody" || i || c || a.type === "ObjectPattern" && d.type !== "FunctionDeclaration" && d.type !== "FunctionExpression" && d.type !== "ArrowFunctionExpression" && d.type !== "ObjectMethod" && d.type !== "ClassMethod" && d.type !== "ClassPrivateMethod" && d.type !== "AssignmentPattern" && d.type !== "CatchClause" && a.properties.some((h) => h.value && (h.value.type === "ObjectPattern" || h.value.type === "ArrayPattern")) || a.type !== "ObjectPattern" && l.length > 0 && Oe(t.originalText, $(a), l[0].loc), D = c ? ";" : a.type === "TSInterfaceBody" || a.type === "TSTypeLiteral" ? P(u, ";") : ",", f = a.type === "RecordExpression" ? "#{" : a.exact ? "{|" : "{", C = a.exact ? "|}" : "}", F = [], B = l.map((h) => {
3450
+ let j = [...F, m(h.printed)];
3451
+ return F = [D, T], (h.node.type === "TSPropertySignature" || h.node.type === "TSMethodSignature" || h.node.type === "TSConstructSignatureDeclaration" || h.node.type === "TSCallSignatureDeclaration") && x(h.node, S.PrettierIgnore) && F.shift(), Pe(h.node, t) && F.push(A), j;
3452
+ });
3453
+ if (a.inexact || a.hasUnknownMembers) {
3454
+ let h;
3455
+ if (x(a, S.Dangling)) {
3456
+ let j = x(a, S.Line);
3457
+ h = [X(e, t), j || ie(t.originalText, I(M(!1, at(a), -1))) ? A : T, "..."];
3458
+ } else h = ["..."];
3459
+ B.push([...F, ...h]);
3460
+ }
3461
+ let b = (r = M(!1, l, -1)) == null ? void 0 : r.node, w = !(a.inexact || a.hasUnknownMembers || b && (b.type === "RestElement" || (b.type === "TSPropertySignature" || b.type === "TSCallSignatureDeclaration" || b.type === "TSMethodSignature" || b.type === "TSConstructSignatureDeclaration") && x(b, S.PrettierIgnore))), k;
3462
+ if (B.length === 0) {
3463
+ if (!x(a, S.Dangling)) return [f, C, z(e, n)];
3464
+ k = m([f, X(e, t, { indent: !0 }), E, C, ne(e), z(e, n)]);
3465
+ } else k = [c && O(a.properties) ? xa(d) : "", f, g([t.bracketSpacing ? T : E, ...B]), P(w && (D !== "," || ke(t)) ? D : ""), t.bracketSpacing ? T : E, C, ne(e), z(e, n)];
3466
+ return e.match((h) => h.type === "ObjectPattern" && !O(h.decorators), Fn) || Le(a) && (e.match(void 0, (h, j) => j === "typeAnnotation", (h, j) => j === "typeAnnotation", Fn) || e.match(void 0, (h, j) => h.type === "FunctionTypeParam" && j === "typeAnnotation", Fn)) || !s && e.match((h) => h.type === "ObjectPattern", (h) => h.type === "AssignmentExpression" || h.type === "VariableDeclarator") ? k : m(k, { shouldBreak: s });
3467
+ }
3468
+ function Fn(e, t) {
3469
+ return (t === "params" || t === "parameters" || t === "this" || t === "rest") && $u(e);
3470
+ }
3471
+ function hc(e) {
3472
+ let t = [e];
3473
+ for (let n = 0; n < t.length; n++) {
3474
+ let r = t[n];
3475
+ for (let u of ["test", "consequent", "alternate"]) {
3476
+ let a = r[u];
3477
+ if (V(a)) return !0;
3478
+ a.type === "ConditionalExpression" && t.push(a);
3479
+ }
3480
+ }
3481
+ return !1;
3482
+ }
3483
+ function xc(e, t, n) {
3484
+ let { node: r } = e, u = r.type === "ConditionalExpression", a = u ? "alternate" : "falseType", { parent: o } = e, i = u ? n("test") : [n("checkType"), " ", "extends", " ", n("extendsType")];
3485
+ return o.type === r.type && o[a] === r ? Te(2, i) : i;
3486
+ }
3487
+ var Tc = /* @__PURE__ */ new Map([["AssignmentExpression", "right"], ["VariableDeclarator", "init"], ["ReturnStatement", "argument"], ["ThrowStatement", "argument"], ["UnaryExpression", "argument"], ["YieldExpression", "argument"], ["AwaitExpression", "argument"]]);
3488
+ function Sc(e) {
3489
+ let { node: t } = e;
3490
+ if (t.type !== "ConditionalExpression") return !1;
3491
+ let n, r = t;
3492
+ for (let u = 0; !n; u++) {
3493
+ let a = e.getParentNode(u);
3494
+ if (a.type === "ChainExpression" && a.expression === r || L(a) && a.callee === r || W(a) && a.object === r || a.type === "TSNonNullExpression" && a.expression === r) {
3495
+ r = a;
3496
+ continue;
3497
+ }
3498
+ a.type === "NewExpression" && a.callee === r || he(a) && a.expression === r ? (n = e.getParentNode(u + 1), r = a) : n = a;
3499
+ }
3500
+ return r === t ? !1 : n[Tc.get(n.type)] === r;
3501
+ }
3502
+ function bc(e, t, n) {
3503
+ let { node: r } = e, u = r.type === "ConditionalExpression", a = u ? "consequent" : "trueType", o = u ? "alternate" : "falseType", i = u ? ["test"] : ["checkType", "extendsType"], p = r[a], l = r[o], d = [], y = !1, { parent: c } = e, s = c.type === r.type && i.some((_) => c[_] === r), D = c.type === r.type && !s, f, C, F = 0;
3504
+ do
3505
+ C = f || r, f = e.getParentNode(F), F++;
3506
+ while (f && f.type === r.type && i.every((_) => f[_] !== C));
3507
+ let B = f || c, b = C;
3508
+ if (u && (V(r[i[0]]) || V(p) || V(l) || hc(b))) {
3509
+ y = !0, D = !0;
3510
+ let _ = (U) => [P("("), g([E, U]), E, P(")")], K = (U) => U.type === "NullLiteral" || U.type === "Literal" && U.value === null || U.type === "Identifier" && U.name === "undefined";
3511
+ d.push(" ? ", K(p) ? n(a) : _(n(a)), " : ", l.type === r.type || K(l) ? n(o) : _(n(o)));
3512
+ } else {
3513
+ let _ = (U) => t.useTabs ? g(n(U)) : Te(2, n(U)), K = [T, "? ", p.type === r.type ? P("", "(") : "", _(a), p.type === r.type ? P("", ")") : "", T, ": ", _(o)];
3514
+ d.push(c.type !== r.type || c[o] === r || s ? K : t.useTabs ? uu(g(K)) : Te(Math.max(0, t.tabWidth - 2), K));
3515
+ }
3516
+ let w = [a, o, ...i].some((_) => x(r[_], (K) => De(K) && Oe(t.originalText, $(K), I(K)))), k = (_) => c === B ? m(_, { shouldBreak: w }) : w ? [_, Se] : _, h = !y && (W(c) || c.type === "NGPipeExpression" && c.left === r) && !c.computed, j = Sc(e), ue = k([xc(e, t, n), D ? d : g(d), u && h && !j ? E : ""]);
3517
+ return s || j ? m([g([E, ue]), E]) : ue;
3518
+ }
3519
+ function Bc(e, t) {
3520
+ return (W(t) || t.type === "NGPipeExpression" && t.left === e) && !t.computed;
3521
+ }
3522
+ function vc(e, t, n, r) {
3523
+ return [...e.map((u) => at(u)), at(t), at(n)].flat().some((u) => De(u) && Oe(r.originalText, $(u), I(u)));
3524
+ }
3525
+ var kc = /* @__PURE__ */ new Map([["AssignmentExpression", "right"], ["VariableDeclarator", "init"], ["ReturnStatement", "argument"], ["ThrowStatement", "argument"], ["UnaryExpression", "argument"], ["YieldExpression", "argument"], ["AwaitExpression", "argument"]]);
3526
+ function Pc(e) {
3527
+ let { node: t } = e;
3528
+ if (t.type !== "ConditionalExpression") return !1;
3529
+ let n, r = t;
3530
+ for (let u = 0; !n; u++) {
3531
+ let a = e.getParentNode(u);
3532
+ if (a.type === "ChainExpression" && a.expression === r || L(a) && a.callee === r || W(a) && a.object === r || a.type === "TSNonNullExpression" && a.expression === r) {
3533
+ r = a;
3534
+ continue;
3535
+ }
3536
+ a.type === "NewExpression" && a.callee === r || he(a) && a.expression === r ? (n = e.getParentNode(u + 1), r = a) : n = a;
3537
+ }
3538
+ return r === t ? !1 : n[kc.get(n.type)] === r;
3539
+ }
3540
+ var An = (e) => [P("("), g([E, e]), E, P(")")];
3541
+ function ur(e, t, n, r) {
3542
+ if (!t.experimentalTernaries) return bc(e, t, n);
3543
+ let { node: u } = e, a = u.type === "ConditionalExpression", o = u.type === "TSConditionalType" || u.type === "ConditionalTypeAnnotation", i = a ? "consequent" : "trueType", p = a ? "alternate" : "falseType", l = a ? ["test"] : ["checkType", "extendsType"], d = u[i], y = u[p], c = l.map((me) => u[me]), { parent: s } = e, D = s.type === u.type, f = D && l.some((me) => s[me] === u), C = D && s[p] === u, F = d.type === u.type, B = y.type === u.type, b = B || C, w = t.tabWidth > 2 || t.useTabs, k, h, j = 0;
3544
+ do
3545
+ h = k || u, k = e.getParentNode(j), j++;
3546
+ while (k && k.type === u.type && l.every((me) => k[me] !== h));
3547
+ let ue = k || s, _ = r && r.assignmentLayout && r.assignmentLayout !== "break-after-operator" && (s.type === "AssignmentExpression" || s.type === "VariableDeclarator" || s.type === "ClassProperty" || s.type === "PropertyDefinition" || s.type === "ClassPrivateProperty" || s.type === "ObjectProperty" || s.type === "Property"), K = (s.type === "ReturnStatement" || s.type === "ThrowStatement") && !(F || B), U = a && ue.type === "JSXExpressionContainer" && e.grandparent.type !== "JSXAttribute", nt = Pc(e), Ft = Bc(u, s), v = o && et(e, t), J = w ? t.useTabs ? " " : " ".repeat(t.tabWidth - 1) : "", G = vc(c, d, y, t) || F || B, de = !b && !D && !o && (U ? d.type === "NullLiteral" || d.type === "Literal" && d.value === null : $n(d, t) && lr(u.test, 3)), Xe = b || C || o && !D || D && a && lr(u.test, 1) || de, ar = [];
3548
+ !F && x(d, S.Dangling) && e.call((me) => {
3549
+ ar.push(X(me, t), A);
3550
+ }, "consequent");
3551
+ let At = [];
3552
+ x(u.test, S.Dangling) && e.call((me) => {
3553
+ At.push(X(me, t));
3554
+ }, "test"), !B && x(y, S.Dangling) && e.call((me) => {
3555
+ At.push(X(me, t));
3556
+ }, "alternate"), x(u, S.Dangling) && At.push(X(e, t));
3557
+ let or = Symbol("test"), Ua = Symbol("consequent"), Lt = Symbol("test-and-consequent"), Ga = a ? [An(n("test")), u.test.type === "ConditionalExpression" ? Se : ""] : [n("checkType"), " ", "extends", " ", u.extendsType.type === "TSConditionalType" || u.extendsType.type === "ConditionalTypeAnnotation" || u.extendsType.type === "TSMappedType" ? n("extendsType") : m(An(n("extendsType")))], ir = m([Ga, " ?"], { id: or }), Va = n(i), Mt = g([F || U && (V(d) || D || b) ? A : T, ar, Va]), Ka = Xe ? m([ir, b ? Mt : P(Mt, m(Mt, { id: Ua }), { groupId: or })], { id: Lt }) : [ir, Mt], sn = n(p), sr = de ? P(sn, uu(An(sn)), { groupId: Lt }) : sn, gt = [Ka, At.length > 0 ? [g([A, At]), A] : B ? A : de ? P(T, " ", { groupId: Lt }) : T, ":", B ? " " : w ? Xe ? P(J, P(b || de ? " " : J, " "), { groupId: Lt }) : P(J, " ") : " ", B ? sr : m([g(sr), U && !de ? E : ""]), Ft && !nt ? E : "", G ? Se : ""];
3558
+ return _ && !G ? m(g([E, m(gt)])) : _ || K ? m(g(gt)) : nt || o && f ? m([g([E, gt]), v ? E : ""]) : s === ue ? m(gt) : gt;
3559
+ }
3560
+ function wc(e, t, n, r) {
3561
+ let { node: u } = e;
3562
+ if (_n(u)) return Dc(e, t);
3563
+ let a = t.semi ? ";" : "", o = [];
3564
+ switch (u.type) {
3565
+ case "JsExpressionRoot":
3566
+ return n("node");
3567
+ case "JsonRoot":
3568
+ return [n("node"), A];
3569
+ case "File":
3570
+ return cc(e, t, n) ?? n("program");
3571
+ case "EmptyStatement":
3572
+ return "";
3573
+ case "ExpressionStatement":
3574
+ return lc(e, t, n);
3575
+ case "ChainExpression":
3576
+ return n("expression");
3577
+ case "ParenthesizedExpression":
3578
+ return !x(u.expression) && (Ae(u.expression) || Q(u.expression)) ? ["(", n("expression"), ")"] : m(["(", g([E, n("expression")]), E, ")"]);
3579
+ case "AssignmentExpression":
3580
+ return il(e, t, n);
3581
+ case "VariableDeclarator":
3582
+ return sl(e, t, n);
3583
+ case "BinaryExpression":
3584
+ case "LogicalExpression":
3585
+ return wu(e, t, n);
3586
+ case "AssignmentPattern":
3587
+ return [n("left"), " = ", n("right")];
3588
+ case "OptionalMemberExpression":
3589
+ case "MemberExpression":
3590
+ return ul(e, t, n);
3591
+ case "MetaProperty":
3592
+ return [n("meta"), ".", n("property")];
3593
+ case "BindExpression":
3594
+ return u.object && o.push(n("object")), o.push(m(g([E, ua(e, t, n)]))), o;
3595
+ case "Identifier":
3596
+ return [u.name, ne(e), ra(e), z(e, n)];
3597
+ case "V8IntrinsicIdentifier":
3598
+ return ["%", u.name];
3599
+ case "SpreadElement":
3600
+ case "SpreadElementPattern":
3601
+ case "SpreadPropertyPattern":
3602
+ case "RestElement":
3603
+ return aa(e, n);
3604
+ case "FunctionDeclaration":
3605
+ case "FunctionExpression":
3606
+ return ca(e, n, t, r);
3607
+ case "ArrowFunctionExpression":
3608
+ return Ul(e, t, n, r);
3609
+ case "YieldExpression":
3610
+ return o.push("yield"), u.delegate && o.push("*"), u.argument && o.push(" ", n("argument")), o;
3611
+ case "AwaitExpression":
3612
+ if (o.push("await"), u.argument) {
3613
+ o.push(" ", n("argument"));
3614
+ let { parent: i } = e;
3615
+ if (L(i) && i.callee === u || W(i) && i.object === u) {
3616
+ o = [g([E, ...o]), E];
3617
+ let p = e.findAncestor((l) => l.type === "AwaitExpression" || l.type === "BlockStatement");
3618
+ if ((p == null ? void 0 : p.type) !== "AwaitExpression" || !ee(p.argument, (l) => l === u)) return m(o);
3619
+ }
3620
+ }
3621
+ return o;
3622
+ case "ExportDefaultDeclaration":
3623
+ case "ExportNamedDeclaration":
3624
+ case "ExportAllDeclaration":
3625
+ return Na(e, t, n);
3626
+ case "ImportDeclaration":
3627
+ return mc(e, t, n);
3628
+ case "ImportSpecifier":
3629
+ case "ExportSpecifier":
3630
+ case "ImportNamespaceSpecifier":
3631
+ case "ExportNamespaceSpecifier":
3632
+ case "ImportDefaultSpecifier":
3633
+ case "ExportDefaultSpecifier":
3634
+ return gc(e, t, n);
3635
+ case "ImportAttribute":
3636
+ return mn(e, t, n);
3637
+ case "Import":
3638
+ return "import";
3639
+ case "Program":
3640
+ case "BlockStatement":
3641
+ case "StaticBlock":
3642
+ return fa(e, t, n);
3643
+ case "ClassBody":
3644
+ return ic(e, t, n);
3645
+ case "ThrowStatement":
3646
+ return Rl(e, t, n);
3647
+ case "ReturnStatement":
3648
+ return $l(e, t, n);
3649
+ case "NewExpression":
3650
+ case "ImportExpression":
3651
+ case "OptionalCallExpression":
3652
+ case "CallExpression":
3653
+ return Ju(e, t, n);
3654
+ case "ObjectExpression":
3655
+ case "ObjectPattern":
3656
+ case "RecordExpression":
3657
+ return on(e, t, n);
3658
+ case "Property":
3659
+ return en(u) ? Nn(e, t, n) : mn(e, t, n);
3660
+ case "ObjectProperty":
3661
+ return mn(e, t, n);
3662
+ case "ObjectMethod":
3663
+ return Nn(e, t, n);
3664
+ case "Decorator":
3665
+ return ["@", n("expression")];
3666
+ case "ArrayExpression":
3667
+ case "ArrayPattern":
3668
+ case "TupleExpression":
3669
+ return Zn(e, t, n);
3670
+ case "SequenceExpression": {
3671
+ let { parent: i } = e;
3672
+ if (i.type === "ExpressionStatement" || i.type === "ForStatement") {
3673
+ let p = [];
3674
+ return e.each(({ isFirst: l }) => {
3675
+ l ? p.push(n()) : p.push(",", g([T, n()]));
3676
+ }, "expressions"), m(p);
3677
+ }
3678
+ return m(N([",", T], e.map(n, "expressions")));
3679
+ }
3680
+ case "ThisExpression":
3681
+ return "this";
3682
+ case "Super":
3683
+ return "super";
3684
+ case "Directive":
3685
+ return [n("value"), a];
3686
+ case "UnaryExpression":
3687
+ return o.push(u.operator), /[a-z]$/u.test(u.operator) && o.push(" "), x(u.argument) ? o.push(m(["(", g([E, n("argument")]), E, ")"])) : o.push(n("argument")), o;
3688
+ case "UpdateExpression":
3689
+ return [u.prefix ? u.operator : "", n("argument"), u.prefix ? "" : u.operator];
3690
+ case "ConditionalExpression":
3691
+ return ur(e, t, n, r);
3692
+ case "VariableDeclaration": {
3693
+ let i = e.map(n, "declarations"), p = e.parent, l = p.type === "ForStatement" || p.type === "ForInStatement" || p.type === "ForOfStatement", d = u.declarations.some((c) => c.init), y;
3694
+ return i.length === 1 && !x(u.declarations[0]) ? y = i[0] : i.length > 0 && (y = g(i[0])), o = [oe(e), u.kind, y ? [" ", y] : "", g(i.slice(1).map((c) => [",", d && !l ? A : T, c]))], l && p.body !== u || o.push(a), m(o);
3695
+ }
3696
+ case "WithStatement":
3697
+ return m(["with (", n("object"), ")", Ie(u.body, n("body"))]);
3698
+ case "IfStatement": {
3699
+ let i = Ie(u.consequent, n("consequent")), p = m(["if (", m([g([E, n("test")]), E]), ")", i]);
3700
+ if (o.push(p), u.alternate) {
3701
+ let l = x(u.consequent, S.Trailing | S.Line) || Qr(u), d = u.consequent.type === "BlockStatement" && !l;
3702
+ o.push(d ? " " : A), x(u, S.Dangling) && o.push(X(e, t), l ? A : " "), o.push("else", m(Ie(u.alternate, n("alternate"), u.alternate.type === "IfStatement")));
3703
+ }
3704
+ return o;
3705
+ }
3706
+ case "ForStatement": {
3707
+ let i = Ie(u.body, n("body")), p = X(e, t), l = p ? [p, E] : "";
3708
+ return !u.init && !u.test && !u.update ? [l, m(["for (;;)", i])] : [l, m(["for (", m([g([E, n("init"), ";", T, n("test"), ";", T, n("update")]), E]), ")", i])];
3709
+ }
3710
+ case "WhileStatement":
3711
+ return m(["while (", m([g([E, n("test")]), E]), ")", Ie(u.body, n("body"))]);
3712
+ case "ForInStatement":
3713
+ return m(["for (", n("left"), " in ", n("right"), ")", Ie(u.body, n("body"))]);
3714
+ case "ForOfStatement":
3715
+ return m(["for", u.await ? " await" : "", " (", n("left"), " of ", n("right"), ")", Ie(u.body, n("body"))]);
3716
+ case "DoWhileStatement": {
3717
+ let i = Ie(u.body, n("body"));
3718
+ return o = [m(["do", i])], u.body.type === "BlockStatement" ? o.push(" ") : o.push(A), o.push("while (", m([g([E, n("test")]), E]), ")", a), o;
3719
+ }
3720
+ case "DoExpression":
3721
+ return [u.async ? "async " : "", "do ", n("body")];
3722
+ case "BreakStatement":
3723
+ case "ContinueStatement":
3724
+ return o.push(u.type === "BreakStatement" ? "break" : "continue"), u.label && o.push(" ", n("label")), o.push(a), o;
3725
+ case "LabeledStatement":
3726
+ return u.body.type === "EmptyStatement" ? [n("label"), ":;"] : [n("label"), ": ", n("body")];
3727
+ case "TryStatement":
3728
+ return ["try ", n("block"), u.handler ? [" ", n("handler")] : "", u.finalizer ? [" finally ", n("finalizer")] : ""];
3729
+ case "CatchClause":
3730
+ if (u.param) {
3731
+ let i = x(u.param, (l) => !De(l) || l.leading && ie(t.originalText, I(l)) || l.trailing && ie(t.originalText, $(l), { backwards: !0 })), p = n("param");
3732
+ return ["catch ", i ? ["(", g([E, p]), E, ") "] : ["(", p, ") "], n("body")];
3733
+ }
3734
+ return ["catch ", n("body")];
3735
+ case "SwitchStatement":
3736
+ return [m(["switch (", g([E, n("discriminant")]), E, ")"]), " {", u.cases.length > 0 ? g([A, N(A, e.map(({ node: i, isLast: p }) => [n(), !p && Pe(i, t) ? A : ""], "cases"))]) : "", A, "}"];
3737
+ case "SwitchCase": {
3738
+ u.test ? o.push("case ", n("test"), ":") : o.push("default:"), x(u, S.Dangling) && o.push(" ", X(e, t));
3739
+ let i = u.consequent.filter((p) => p.type !== "EmptyStatement");
3740
+ if (i.length > 0) {
3741
+ let p = In(e, t, n, "consequent");
3742
+ o.push(i.length === 1 && i[0].type === "BlockStatement" ? [" ", p] : g([A, p]));
3743
+ }
3744
+ return o;
3745
+ }
3746
+ case "DebuggerStatement":
3747
+ return ["debugger", a];
3748
+ case "ClassDeclaration":
3749
+ case "ClassExpression":
3750
+ return Ca(e, t, n);
3751
+ case "ClassMethod":
3752
+ case "ClassPrivateMethod":
3753
+ case "MethodDefinition":
3754
+ return Sa(e, t, n);
3755
+ case "ClassProperty":
3756
+ case "PropertyDefinition":
3757
+ case "ClassPrivateProperty":
3758
+ case "ClassAccessorProperty":
3759
+ case "AccessorProperty":
3760
+ return ba(e, t, n);
3761
+ case "TemplateElement":
3762
+ return Ge(u.value.raw);
3763
+ case "TemplateLiteral":
3764
+ return Cu(e, n, t);
3765
+ case "TaggedTemplateExpression":
3766
+ return Es(e, n);
3767
+ case "PrivateIdentifier":
3768
+ return ["#", u.name];
3769
+ case "PrivateName":
3770
+ return ["#", n("id")];
3771
+ case "TopicReference":
3772
+ return "%";
3773
+ case "ArgumentPlaceholder":
3774
+ return "?";
3775
+ case "ModuleExpression":
3776
+ return ["module ", n("body")];
3777
+ case "InterpreterDirective":
3778
+ default:
3779
+ throw new ft(u, "ESTree");
3780
+ }
3781
+ }
3782
+ function Ja(e, t, n) {
3783
+ let { parent: r, node: u, key: a } = e, o = [n("expression")];
3784
+ switch (u.type) {
3785
+ case "AsConstExpression":
3786
+ o.push(" as const");
3787
+ break;
3788
+ case "AsExpression":
3789
+ case "TSAsExpression":
3790
+ o.push(" as ", n("typeAnnotation"));
3791
+ break;
3792
+ case "SatisfiesExpression":
3793
+ case "TSSatisfiesExpression":
3794
+ o.push(" satisfies ", n("typeAnnotation"));
3795
+ break;
3796
+ }
3797
+ return a === "callee" && L(r) || a === "object" && W(r) ? m([g([E, ...o]), E]) : o;
3798
+ }
3799
+ function Nc(e, t, n) {
3800
+ let { node: r } = e, u = [oe(e), "component"];
3801
+ r.id && u.push(" ", n("id")), u.push(n("typeParameters"));
3802
+ let a = Ic(e, n, t);
3803
+ return r.rendersType ? u.push(m([a, " ", n("rendersType")])) : u.push(m([a])), r.body && u.push(" ", n("body")), t.semi && r.type === "DeclareComponent" && u.push(";"), u;
3804
+ }
3805
+ function Ic(e, t, n) {
3806
+ let { node: r } = e, u = r.params;
3807
+ if (r.rest && (u = [...u, r.rest]), u.length === 0) return ["(", X(e, n, { filter: (o) => ge(n.originalText, I(o)) === ")" }), ")"];
3808
+ let a = [];
3809
+ return Lc(e, (o, i) => {
3810
+ let p = i === u.length - 1;
3811
+ p && r.rest && a.push("..."), a.push(t()), !p && (a.push(","), Pe(u[i], n) ? a.push(A, A) : a.push(T));
3812
+ }), ["(", g([E, ...a]), P(ke(n, "all") && !jc(r, u) ? "," : ""), E, ")"];
3813
+ }
3814
+ function jc(e, t) {
3815
+ var n;
3816
+ return e.rest || ((n = M(!1, t, -1)) == null ? void 0 : n.type) === "RestElement";
3817
+ }
3818
+ function Lc(e, t) {
3819
+ let { node: n } = e, r = 0, u = (a) => t(a, r++);
3820
+ e.each(u, "params"), n.rest && e.call(u, "rest");
3821
+ }
3822
+ function Mc(e, t, n) {
3823
+ let { node: r } = e;
3824
+ return r.shorthand ? n("local") : [n("name"), " as ", n("local")];
3825
+ }
3826
+ function Oc(e, t, n) {
3827
+ let { node: r } = e, u = [];
3828
+ return r.name && u.push(n("name"), r.optional ? "?: " : ": "), u.push(n("typeAnnotation")), u;
3829
+ }
3830
+ function qa(e, t, n) {
3831
+ return on(e, n, t);
3832
+ }
3833
+ function _a(e, t) {
3834
+ let { node: n } = e, r = t("id");
3835
+ n.computed && (r = ["[", r, "]"]);
3836
+ let u = "";
3837
+ return n.initializer && (u = t("initializer")), n.init && (u = t("init")), u ? [r, " = ", u] : r;
3838
+ }
3839
+ function Jc(e, t, n) {
3840
+ let { node: r } = e, u;
3841
+ if (r.type === "EnumSymbolBody" || r.explicitType) switch (r.type) {
3842
+ case "EnumBooleanBody":
3843
+ u = "boolean";
3844
+ break;
3845
+ case "EnumNumberBody":
3846
+ u = "number";
3847
+ break;
3848
+ case "EnumBigIntBody":
3849
+ u = "bigint";
3850
+ break;
3851
+ case "EnumStringBody":
3852
+ u = "string";
3853
+ break;
3854
+ case "EnumSymbolBody":
3855
+ u = "symbol";
3856
+ break;
3857
+ }
3858
+ return [u ? `of ${u} ` : "", qa(e, t, n)];
3859
+ }
3860
+ function Xa(e, t, n) {
3861
+ let { node: r } = e;
3862
+ return [oe(e), r.const ? "const " : "", "enum ", t("id"), " ", r.type === "TSEnumDeclaration" ? qa(e, t, n) : t("body")];
3863
+ }
3864
+ function qc(e, t, n) {
3865
+ let { node: r } = e, u = ["hook"];
3866
+ r.id && u.push(" ", n("id"));
3867
+ let a = tt(e, n, t, !1, !0), o = an(e, n), i = Et(r, o);
3868
+ return u.push(m([i ? m(a) : a, o]), r.body ? " " : "", n("body")), u;
3869
+ }
3870
+ function _c(e, t, n) {
3871
+ let { node: r } = e, u = [oe(e), "hook"];
3872
+ return r.id && u.push(" ", n("id")), t.semi && u.push(";"), u;
3873
+ }
3874
+ function Ir(e) {
3875
+ var t;
3876
+ let { node: n } = e;
3877
+ return n.type === "HookTypeAnnotation" && ((t = e.getParentNode(2)) == null ? void 0 : t.type) === "DeclareHook";
3878
+ }
3879
+ function Xc(e, t, n) {
3880
+ let { node: r } = e, u = [];
3881
+ u.push(Ir(e) ? "" : "hook ");
3882
+ let a = tt(e, n, t, !1, !0), o = [];
3883
+ return o.push(Ir(e) ? ": " : " => ", n("returnType")), Et(r, o) && (a = m(a)), u.push(a, o), m(u);
3884
+ }
3885
+ function $a(e, t, n) {
3886
+ let { node: r } = e, u = [oe(e), "interface"], a = [], o = [];
3887
+ r.type !== "InterfaceTypeAnnotation" && a.push(" ", n("id"), n("typeParameters"));
3888
+ let i = r.typeParameters && !x(r.typeParameters, S.Trailing | S.Line);
3889
+ return O(r.extends) && o.push(i ? P(" ", T, { groupId: tr(r.typeParameters) }) : T, "extends ", (r.extends.length === 1 ? ei : g)(N([",", T], e.map(n, "extends")))), x(r.id, S.Trailing) || O(r.extends) ? i ? u.push(m([...a, g(o)])) : u.push(m(g([...a, ...o]))) : u.push(...a, ...o), u.push(" ", n("body")), m(u);
3890
+ }
3891
+ function $c(e, t, n) {
3892
+ let { node: r } = e;
3893
+ if ($r(r)) return r.type.slice(0, -14).toLowerCase();
3894
+ let u = t.semi ? ";" : "";
3895
+ switch (r.type) {
3896
+ case "ComponentDeclaration":
3897
+ case "DeclareComponent":
3898
+ case "ComponentTypeAnnotation":
3899
+ return Nc(e, t, n);
3900
+ case "ComponentParameter":
3901
+ return Mc(e, t, n);
3902
+ case "ComponentTypeParameter":
3903
+ return Oc(e, t, n);
3904
+ case "HookDeclaration":
3905
+ return qc(e, t, n);
3906
+ case "DeclareHook":
3907
+ return _c(e, t, n);
3908
+ case "HookTypeAnnotation":
3909
+ return Xc(e, t, n);
3910
+ case "DeclareClass":
3911
+ return Ca(e, t, n);
3912
+ case "DeclareFunction":
3913
+ return [oe(e), "function ", n("id"), n("predicate"), u];
3914
+ case "DeclareModule":
3915
+ return ["declare module ", n("id"), " ", n("body")];
3916
+ case "DeclareModuleExports":
3917
+ return ["declare module.exports", z(e, n), u];
3918
+ case "DeclareNamespace":
3919
+ return ["declare namespace ", n("id"), " ", n("body")];
3920
+ case "DeclareVariable":
3921
+ return [oe(e), r.kind ?? "var", " ", n("id"), u];
3922
+ case "DeclareExportDeclaration":
3923
+ case "DeclareExportAllDeclaration":
3924
+ return Na(e, t, n);
3925
+ case "DeclareOpaqueType":
3926
+ case "OpaqueType":
3927
+ return Bl(e, t, n);
3928
+ case "DeclareTypeAlias":
3929
+ case "TypeAlias":
3930
+ return Wu(e, t, n);
3931
+ case "IntersectionTypeAnnotation":
3932
+ return Uu(e, t, n);
3933
+ case "UnionTypeAnnotation":
3934
+ return Gu(e, t, n);
3935
+ case "ConditionalTypeAnnotation":
3936
+ return ur(e, t, n);
3937
+ case "InferTypeAnnotation":
3938
+ return Hu(e, t, n);
3939
+ case "FunctionTypeAnnotation":
3940
+ return Vu(e, t, n);
3941
+ case "TupleTypeAnnotation":
3942
+ return Zn(e, t, n);
3943
+ case "TupleTypeLabeledElement":
3944
+ return Qu(e, t, n);
3945
+ case "TupleTypeSpreadElement":
3946
+ return zu(e, t, n);
3947
+ case "GenericTypeAnnotation":
3948
+ return [n("id"), bt(e, t, n, "typeParameters")];
3949
+ case "IndexedAccessType":
3950
+ case "OptionalIndexedAccessType":
3951
+ return Ku(e, t, n);
3952
+ case "TypeAnnotation":
3953
+ return Zu(e, t, n);
3954
+ case "TypeParameter":
3955
+ return Aa(e, t, n);
3956
+ case "TypeofTypeAnnotation":
3957
+ return ta(e, n);
3958
+ case "ExistsTypeAnnotation":
3959
+ return "*";
3960
+ case "ArrayTypeAnnotation":
3961
+ return ea(n);
3962
+ case "DeclareEnum":
3963
+ case "EnumDeclaration":
3964
+ return Xa(e, n, t);
3965
+ case "EnumBooleanBody":
3966
+ case "EnumNumberBody":
3967
+ case "EnumBigIntBody":
3968
+ case "EnumStringBody":
3969
+ case "EnumSymbolBody":
3970
+ return Jc(e, n, t);
3971
+ case "EnumBooleanMember":
3972
+ case "EnumNumberMember":
3973
+ case "EnumBigIntMember":
3974
+ case "EnumStringMember":
3975
+ case "EnumDefaultedMember":
3976
+ return _a(e, n);
3977
+ case "FunctionTypeParam": {
3978
+ let a = r.name ? n("name") : e.parent.this === r ? "this" : "";
3979
+ return [a, ne(e), a ? ": " : "", n("typeAnnotation")];
3980
+ }
3981
+ case "DeclareInterface":
3982
+ case "InterfaceDeclaration":
3983
+ case "InterfaceTypeAnnotation":
3984
+ return $a(e, t, n);
3985
+ case "ClassImplements":
3986
+ case "InterfaceExtends":
3987
+ return [n("id"), n("typeParameters")];
3988
+ case "NullableTypeAnnotation":
3989
+ return ["?", n("typeAnnotation")];
3990
+ case "Variance": {
3991
+ let { kind: a } = r;
3992
+ return pa.ok(a === "plus" || a === "minus"), a === "plus" ? "+" : "-";
3993
+ }
3994
+ case "KeyofTypeAnnotation":
3995
+ return ["keyof ", n("argument")];
3996
+ case "ObjectTypeCallProperty":
3997
+ return [r.static ? "static " : "", n("value")];
3998
+ case "ObjectTypeMappedTypeProperty":
3999
+ return tc(e, t, n);
4000
+ case "ObjectTypeIndexer":
4001
+ return [r.static ? "static " : "", r.variance ? n("variance") : "", "[", n("id"), r.id ? ": " : "", n("key"), "]: ", n("value")];
4002
+ case "ObjectTypeProperty": {
4003
+ let a = "";
4004
+ return r.proto ? a = "proto " : r.static && (a = "static "), [a, r.kind !== "init" ? r.kind + " " : "", r.variance ? n("variance") : "", jt(e, t, n), ne(e), en(r) ? "" : ": ", n("value")];
4005
+ }
4006
+ case "ObjectTypeAnnotation":
4007
+ return on(e, t, n);
4008
+ case "ObjectTypeInternalSlot":
4009
+ return [r.static ? "static " : "", "[[", n("id"), "]]", ne(e), r.method ? "" : ": ", n("value")];
4010
+ case "ObjectTypeSpreadProperty":
4011
+ return aa(e, n);
4012
+ case "QualifiedTypeofIdentifier":
4013
+ case "QualifiedTypeIdentifier":
4014
+ return [n("qualification"), ".", n("id")];
4015
+ case "NullLiteralTypeAnnotation":
4016
+ return "null";
4017
+ case "BooleanLiteralTypeAnnotation":
4018
+ return String(r.value);
4019
+ case "StringLiteralTypeAnnotation":
4020
+ return Ge(pt(pe(r), t));
4021
+ case "NumberLiteralTypeAnnotation":
4022
+ return je(r.raw ?? r.extra.raw);
4023
+ case "BigIntLiteralTypeAnnotation":
4024
+ return jn(r.raw ?? r.extra.raw);
4025
+ case "TypeCastExpression":
4026
+ return ["(", n("expression"), z(e, n), ")"];
4027
+ case "TypePredicate":
4028
+ return na(e, n);
4029
+ case "TypeOperator":
4030
+ return [r.operator, " ", n("typeAnnotation")];
4031
+ case "TypeParameterDeclaration":
4032
+ case "TypeParameterInstantiation":
4033
+ return bt(e, t, n, "params");
4034
+ case "InferredPredicate":
4035
+ case "DeclaredPredicate":
4036
+ return [e.key === "predicate" && e.parent.type !== "DeclareFunction" && !e.parent.returnType ? ": " : " ", "%checks", ...r.type === "DeclaredPredicate" ? ["(", n("value"), ")"] : []];
4037
+ case "AsExpression":
4038
+ case "AsConstExpression":
4039
+ case "SatisfiesExpression":
4040
+ return Ja(e, t, n);
4041
+ }
4042
+ }
4043
+ function Rc(e, t, n) {
4044
+ var r;
4045
+ let { node: u } = e;
4046
+ if (!u.type.startsWith("TS")) return;
4047
+ if (Rr(u)) return u.type.slice(2, -7).toLowerCase();
4048
+ let a = t.semi ? ";" : "", o = [];
4049
+ switch (u.type) {
4050
+ case "TSThisType":
4051
+ return "this";
4052
+ case "TSTypeAssertion": {
4053
+ let i = !(Q(u.expression) || Ae(u.expression)), p = m(["<", g([E, n("typeAnnotation")]), E, ">"]), l = [P("("), g([E, n("expression")]), E, P(")")];
4054
+ return i ? Re([[p, n("expression")], [p, m(l, { shouldBreak: !0 })], [p, n("expression")]]) : m([p, n("expression")]);
4055
+ }
4056
+ case "TSDeclareFunction":
4057
+ return ca(e, n, t);
4058
+ case "TSExportAssignment":
4059
+ return ["export = ", n("expression"), a];
4060
+ case "TSModuleBlock":
4061
+ return fa(e, t, n);
4062
+ case "TSInterfaceBody":
4063
+ case "TSTypeLiteral":
4064
+ return on(e, t, n);
4065
+ case "TSTypeAliasDeclaration":
4066
+ return Wu(e, t, n);
4067
+ case "TSQualifiedName":
4068
+ return [n("left"), ".", n("right")];
4069
+ case "TSAbstractMethodDefinition":
4070
+ case "TSDeclareMethod":
4071
+ return Sa(e, t, n);
4072
+ case "TSAbstractAccessorProperty":
4073
+ case "TSAbstractPropertyDefinition":
4074
+ return ba(e, t, n);
4075
+ case "TSInterfaceHeritage":
4076
+ case "TSClassImplements":
4077
+ case "TSExpressionWithTypeArguments":
4078
+ case "TSInstantiationExpression":
4079
+ return [n("expression"), n(u.typeArguments ? "typeArguments" : "typeParameters")];
4080
+ case "TSTemplateLiteralType":
4081
+ return Cu(e, n, t);
4082
+ case "TSNamedTupleMember":
4083
+ return Qu(e, t, n);
4084
+ case "TSRestType":
4085
+ return zu(e, t, n);
4086
+ case "TSOptionalType":
4087
+ return [n("typeAnnotation"), "?"];
4088
+ case "TSInterfaceDeclaration":
4089
+ return $a(e, t, n);
4090
+ case "TSTypeParameterDeclaration":
4091
+ case "TSTypeParameterInstantiation":
4092
+ return bt(e, t, n, "params");
4093
+ case "TSTypeParameter":
4094
+ return Aa(e, t, n);
4095
+ case "TSAsExpression":
4096
+ case "TSSatisfiesExpression":
4097
+ return Ja(e, t, n);
4098
+ case "TSArrayType":
4099
+ return ea(n);
4100
+ case "TSPropertySignature":
4101
+ return [u.readonly ? "readonly " : "", jt(e, t, n), ne(e), z(e, n)];
4102
+ case "TSParameterProperty":
4103
+ return [zt(u), u.static ? "static " : "", u.override ? "override " : "", u.readonly ? "readonly " : "", n("parameter")];
4104
+ case "TSTypeQuery":
4105
+ return ta(e, n);
4106
+ case "TSIndexSignature": {
4107
+ let i = u.parameters.length > 1 ? P(ke(t) ? "," : "") : "", p = m([g([E, N([", ", E], e.map(n, "parameters"))]), i, E]), l = e.parent.type === "ClassBody" && e.key === "body";
4108
+ return [l && u.static ? "static " : "", u.readonly ? "readonly " : "", "[", u.parameters ? p : "", "]", z(e, n), l ? a : ""];
4109
+ }
4110
+ case "TSTypePredicate":
4111
+ return na(e, n);
4112
+ case "TSNonNullExpression":
4113
+ return [n("expression"), "!"];
4114
+ case "TSImportType":
4115
+ return [u.isTypeOf ? "typeof " : "", "import(", n("argument"), ")", u.qualifier ? [".", n("qualifier")] : "", bt(e, t, n, u.typeArguments ? "typeArguments" : "typeParameters")];
4116
+ case "TSLiteralType":
4117
+ return n("literal");
4118
+ case "TSIndexedAccessType":
4119
+ return Ku(e, t, n);
4120
+ case "TSTypeOperator":
4121
+ return [u.operator, " ", n("typeAnnotation")];
4122
+ case "TSMappedType":
4123
+ return nc(e, t, n);
4124
+ case "TSMethodSignature": {
4125
+ let i = u.kind && u.kind !== "method" ? `${u.kind} ` : "";
4126
+ o.push(zt(u), i, u.computed ? "[" : "", n("key"), u.computed ? "]" : "", ne(e));
4127
+ let p = tt(e, n, t, !1, !0), l = u.returnType ? "returnType" : "typeAnnotation", d = u[l], y = d ? z(e, n, l) : "", c = Et(u, y);
4128
+ return o.push(c ? m(p) : p), d && o.push(m(y)), m(o);
4129
+ }
4130
+ case "TSNamespaceExportDeclaration":
4131
+ return ["export as namespace ", n("id"), t.semi ? ";" : ""];
4132
+ case "TSEnumDeclaration":
4133
+ return Xa(e, n, t);
4134
+ case "TSEnumMember":
4135
+ return _a(e, n);
4136
+ case "TSImportEqualsDeclaration":
4137
+ return [u.isExport ? "export " : "", "import ", Ia(u, !1), n("id"), " = ", n("moduleReference"), t.semi ? ";" : ""];
4138
+ case "TSExternalModuleReference":
4139
+ return ["require(", n("expression"), ")"];
4140
+ case "TSModuleDeclaration": {
4141
+ let { parent: i } = e, p = i.type === "TSModuleDeclaration", l = ((r = u.body) == null ? void 0 : r.type) === "TSModuleDeclaration";
4142
+ if (p) o.push(".");
4143
+ else if (o.push(oe(e)), !(u.kind === "global" || u.global)) {
4144
+ let d = u.kind ?? (re(u.id) || nr(t, $(u), $(u.id)).trim().endsWith("module") ? "module" : "namespace");
4145
+ o.push(d, " ");
4146
+ }
4147
+ return o.push(n("id")), l ? o.push(n("body")) : u.body ? o.push(" ", m(n("body"))) : o.push(a), o;
4148
+ }
4149
+ case "TSConditionalType":
4150
+ return ur(e, t, n);
4151
+ case "TSInferType":
4152
+ return Hu(e, t, n);
4153
+ case "TSIntersectionType":
4154
+ return Uu(e, t, n);
4155
+ case "TSUnionType":
4156
+ return Gu(e, t, n);
4157
+ case "TSFunctionType":
4158
+ case "TSCallSignatureDeclaration":
4159
+ case "TSConstructorType":
4160
+ case "TSConstructSignatureDeclaration":
4161
+ return Vu(e, t, n);
4162
+ case "TSTupleType":
4163
+ return Zn(e, t, n);
4164
+ case "TSTypeReference":
4165
+ return [n("typeName"), bt(e, t, n, u.typeArguments ? "typeArguments" : "typeParameters")];
4166
+ case "TSTypeAnnotation":
4167
+ return Zu(e, t, n);
4168
+ case "TSEmptyBodyFunctionExpression":
4169
+ return er(e, t, n);
4170
+ case "TSJSDocAllType":
4171
+ return "*";
4172
+ case "TSJSDocUnknownType":
4173
+ return "?";
4174
+ case "TSJSDocNullableType":
4175
+ return kr(e, n, "?");
4176
+ case "TSJSDocNonNullableType":
4177
+ return kr(e, n, "!");
4178
+ case "TSParenthesizedType":
4179
+ default:
4180
+ throw new ft(u, "TypeScript");
4181
+ }
4182
+ }
4183
+ function Wc(e, t, n, r) {
4184
+ if (Pu(e)) return pp(e, t);
4185
+ for (let u of [Gp, qp, $c, Rc, wc]) {
4186
+ let a = u(e, t, n, r);
4187
+ if (a !== void 0) return a;
4188
+ }
4189
+ }
4190
+ var Uc = q(["ClassMethod", "ClassPrivateMethod", "ClassProperty", "ClassAccessorProperty", "AccessorProperty", "TSAbstractAccessorProperty", "PropertyDefinition", "TSAbstractPropertyDefinition", "ClassPrivateProperty", "MethodDefinition", "TSAbstractMethodDefinition", "TSDeclareMethod"]);
4191
+ function Gc(e, t, n, r) {
4192
+ var u;
4193
+ e.isRoot && ((u = t.__onHtmlBindingRoot) == null || u.call(t, e.node, t));
4194
+ let a = Wc(e, t, n, r);
4195
+ if (!a) return "";
4196
+ let { node: o } = e;
4197
+ if (Uc(o)) return a;
4198
+ let i = O(o.decorators), p = zp(e, t, n), l = o.type === "ClassExpression";
4199
+ if (i && !l) return xn(a, (c) => m([p, c]));
4200
+ let d = et(e, t), y = pc(e, t);
4201
+ return !p && !d && !y ? a : xn(a, (c) => [y ? ";" : "", d ? "(" : "", d && l && i ? [g([T, p, c]), T] : [p, c], d ? ")" : ""]);
4202
+ }
4203
+ var Vc = Gc, Kc = { avoidAstMutation: !0 }, Hc = [{ linguistLanguageId: 174, name: "JSON.stringify", type: "data", color: "#292929", tmScope: "source.json", aceMode: "json", codemirrorMode: "javascript", codemirrorMimeType: "application/json", aliases: ["geojson", "jsonl", "topojson"], extensions: [".importmap"], filenames: ["package.json", "package-lock.json", "composer.json"], parsers: ["json-stringify"], vscodeLanguageIds: ["json"] }, { linguistLanguageId: 174, name: "JSON", type: "data", color: "#292929", tmScope: "source.json", aceMode: "json", codemirrorMode: "javascript", codemirrorMimeType: "application/json", aliases: ["geojson", "jsonl", "topojson"], extensions: [".json", ".4DForm", ".4DProject", ".avsc", ".geojson", ".gltf", ".har", ".ice", ".JSON-tmLanguage", ".mcmeta", ".tfstate", ".tfstate.backup", ".topojson", ".webapp", ".webmanifest", ".yy", ".yyp"], filenames: [".all-contributorsrc", ".arcconfig", ".auto-changelog", ".c8rc", ".htmlhintrc", ".imgbotconfig", ".nycrc", ".tern-config", ".tern-project", ".watchmanconfig", "Pipfile.lock", "composer.lock", "flake.lock", "mcmod.info", ".babelrc", ".jscsrc", ".jshintrc", ".jslintrc", ".swcrc"], parsers: ["json"], vscodeLanguageIds: ["json"] }, { linguistLanguageId: 423, name: "JSON with Comments", type: "data", color: "#292929", group: "JSON", tmScope: "source.js", aceMode: "javascript", codemirrorMode: "javascript", codemirrorMimeType: "text/javascript", aliases: ["jsonc"], extensions: [".jsonc", ".code-snippets", ".code-workspace", ".sublime-build", ".sublime-commands", ".sublime-completions", ".sublime-keymap", ".sublime-macro", ".sublime-menu", ".sublime-mousemap", ".sublime-project", ".sublime-settings", ".sublime-theme", ".sublime-workspace", ".sublime_metrics", ".sublime_session"], filenames: [], parsers: ["jsonc"], vscodeLanguageIds: ["jsonc"] }, { linguistLanguageId: 175, name: "JSON5", type: "data", color: "#267CB9", extensions: [".json5"], tmScope: "source.js", aceMode: "javascript", codemirrorMode: "javascript", codemirrorMimeType: "application/json", parsers: ["json5"], vscodeLanguageIds: ["json5"] }], Ra = {};
4204
+ Qt(Ra, { getVisitorKeys: () => Zc, massageAstNode: () => Wa, print: () => eD });
4205
+ var zc = { JsonRoot: ["node"], ArrayExpression: ["elements"], ObjectExpression: ["properties"], ObjectProperty: ["key", "value"], UnaryExpression: ["argument"], NullLiteral: [], BooleanLiteral: [], StringLiteral: [], NumericLiteral: [], Identifier: [], TemplateLiteral: ["quasis"], TemplateElement: [] }, Qc = zc, Yc = _r(Qc), Zc = Yc;
4206
+ function eD(e, t, n) {
4207
+ let { node: r } = e;
4208
+ switch (r.type) {
4209
+ case "JsonRoot":
4210
+ return [n("node"), A];
4211
+ case "ArrayExpression": {
4212
+ if (r.elements.length === 0) return "[]";
4213
+ let u = e.map(() => e.node === null ? "null" : n(), "elements");
4214
+ return ["[", g([A, N([",", A], u)]), A, "]"];
4215
+ }
4216
+ case "ObjectExpression":
4217
+ return r.properties.length === 0 ? "{}" : ["{", g([A, N([",", A], e.map(n, "properties"))]), A, "}"];
4218
+ case "ObjectProperty":
4219
+ return [n("key"), ": ", n("value")];
4220
+ case "UnaryExpression":
4221
+ return [r.operator === "+" ? "" : r.operator, n("argument")];
4222
+ case "NullLiteral":
4223
+ return "null";
4224
+ case "BooleanLiteral":
4225
+ return r.value ? "true" : "false";
4226
+ case "StringLiteral":
4227
+ return JSON.stringify(r.value);
4228
+ case "NumericLiteral":
4229
+ return jr(e) ? JSON.stringify(String(r.value)) : JSON.stringify(r.value);
4230
+ case "Identifier":
4231
+ return jr(e) ? JSON.stringify(r.name) : r.name;
4232
+ case "TemplateLiteral":
4233
+ return n(["quasis", 0]);
4234
+ case "TemplateElement":
4235
+ return JSON.stringify(r.value.cooked);
4236
+ default:
4237
+ throw new ft(r, "JSON");
4238
+ }
4239
+ }
4240
+ function jr(e) {
4241
+ return e.key === "key" && e.parent.type === "ObjectProperty";
4242
+ }
4243
+ var tD = /* @__PURE__ */ new Set(["start", "end", "extra", "loc", "comments", "leadingComments", "trailingComments", "innerComments", "errors", "range", "tokens"]);
4244
+ function Wa(e, t) {
4245
+ let { type: n } = e;
4246
+ if (n === "ObjectProperty") {
4247
+ let { key: r } = e;
4248
+ r.type === "Identifier" ? t.key = { type: "StringLiteral", value: r.name } : r.type === "NumericLiteral" && (t.key = { type: "StringLiteral", value: String(r.value) });
4249
+ return;
4250
+ }
4251
+ if (n === "UnaryExpression" && e.operator === "+") return t.argument;
4252
+ if (n === "ArrayExpression") {
4253
+ for (let [r, u] of e.elements.entries()) u === null && t.elements.splice(r, 0, { type: "NullLiteral" });
4254
+ return;
4255
+ }
4256
+ if (n === "TemplateLiteral") return { type: "StringLiteral", value: e.quasis[0].value.cooked };
4257
+ }
4258
+ Wa.ignoredProperties = tD;
4259
+ var $t = { bracketSpacing: { category: "Common", type: "boolean", default: !0, description: "Print spaces between brackets.", oppositeDescription: "Do not print spaces between brackets." }, singleQuote: { category: "Common", type: "boolean", default: !1, description: "Use single quotes instead of double quotes." }, proseWrap: { category: "Common", type: "choice", default: "preserve", description: "How to wrap prose.", choices: [{ value: "always", description: "Wrap prose if it exceeds the print width." }, { value: "never", description: "Do not wrap prose." }, { value: "preserve", description: "Wrap prose as-is." }] }, bracketSameLine: { category: "Common", type: "boolean", default: !1, description: "Put > of opening tags on the last line instead of on a new line." }, singleAttributePerLine: { category: "Common", type: "boolean", default: !1, description: "Enforce single attribute per line in HTML, Vue and JSX." } }, $e = "JavaScript", nD = { arrowParens: { category: $e, type: "choice", default: "always", description: "Include parentheses around a sole arrow function parameter.", choices: [{ value: "always", description: "Always include parens. Example: `(x) => x`" }, { value: "avoid", description: "Omit parens when possible. Example: `x => x`" }] }, bracketSameLine: $t.bracketSameLine, bracketSpacing: $t.bracketSpacing, jsxBracketSameLine: { category: $e, type: "boolean", description: "Put > on the last line instead of at a new line.", deprecated: "2.4.0" }, semi: { category: $e, type: "boolean", default: !0, description: "Print semicolons.", oppositeDescription: "Do not print semicolons, except at the beginning of lines which may need them." }, experimentalTernaries: { category: $e, type: "boolean", default: !1, description: "Use curious ternaries, with the question mark after the condition.", oppositeDescription: "Default behavior of ternaries; keep question marks on the same line as the consequent." }, singleQuote: $t.singleQuote, jsxSingleQuote: { category: $e, type: "boolean", default: !1, description: "Use single quotes in JSX." }, quoteProps: { category: $e, type: "choice", default: "as-needed", description: "Change when properties in objects are quoted.", choices: [{ value: "as-needed", description: "Only add quotes around object properties where required." }, { value: "consistent", description: "If at least one property in an object requires quotes, quote all properties." }, { value: "preserve", description: "Respect the input use of quotes in object properties." }] }, trailingComma: { category: $e, type: "choice", default: "all", description: "Print trailing commas wherever possible when multi-line.", choices: [{ value: "all", description: "Trailing commas wherever possible (including function arguments)." }, { value: "es5", description: "Trailing commas where valid in ES5 (objects, arrays, etc.)" }, { value: "none", description: "No trailing commas." }] }, singleAttributePerLine: $t.singleAttributePerLine }, rD = nD, uD = { estree: Jr, "estree-json": Ra }, aD = [...eo, ...Hc], iD = Or;
4260
+ export {
4261
+ iD as default,
4262
+ aD as languages,
4263
+ rD as options,
4264
+ uD as printers
4265
+ };