eddyter 1.3.61 → 1.3.62

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,4251 @@
1
+ var es = Object.defineProperty, Xr = (e) => {
2
+ throw TypeError(e);
3
+ }, Zt = (e, t) => {
4
+ for (var n in t) es(e, n, { get: t[n], enumerable: !0 });
5
+ }, $r = (e, t, n) => t.has(e) || Xr("Cannot " + n), Je = (e, t, n) => ($r(e, t, "read from private field"), t.get(e)), ts = (e, t, n) => t.has(e) ? Xr("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, n), ns = (e, t, n, r) => ($r(e, t, "write to private field"), t.set(e, n), n), Rr = {};
6
+ Zt(Rr, { languages: () => AD, options: () => ED, printers: () => FD });
7
+ var rs = [{ name: "JavaScript", type: "programming", extensions: [".js", "._js", ".bones", ".cjs", ".es", ".es6", ".gs", ".jake", ".javascript", ".jsb", ".jscad", ".jsfl", ".jslib", ".jsm", ".jspre", ".jss", ".mjs", ".njs", ".pac", ".sjs", ".ssjs", ".xsjs", ".xsjslib", ".start.frag", ".end.frag", ".wxs"], tmScope: "source.js", aceMode: "javascript", aliases: ["js", "node"], codemirrorMode: "javascript", codemirrorMimeType: "text/javascript", interpreters: ["chakra", "d8", "gjs", "js", "node", "nodejs", "qjs", "rhino", "v8", "v8-shell", "zx"], filenames: ["Jakefile", "start.frag", "end.frag"], parsers: ["babel", "acorn", "espree", "meriyah", "babel-flow", "babel-ts", "flow", "typescript"], vscodeLanguageIds: ["javascript", "mongo"], linguistLanguageId: 183 }, { name: "Flow", type: "programming", extensions: [".js.flow"], tmScope: "source.js", aceMode: "javascript", aliases: [], codemirrorMode: "javascript", codemirrorMimeType: "text/javascript", interpreters: ["chakra", "d8", "gjs", "js", "node", "nodejs", "qjs", "rhino", "v8", "v8-shell"], filenames: [], parsers: ["flow", "babel-flow"], vscodeLanguageIds: ["javascript"], linguistLanguageId: 183 }, { name: "JSX", type: "programming", extensions: [".jsx"], tmScope: "source.js.jsx", aceMode: "javascript", aliases: void 0, codemirrorMode: "jsx", codemirrorMimeType: "text/jsx", interpreters: void 0, filenames: void 0, parsers: ["babel", "babel-flow", "babel-ts", "flow", "typescript", "espree", "meriyah"], vscodeLanguageIds: ["javascriptreact"], group: "JavaScript", linguistLanguageId: 183 }, { name: "TypeScript", type: "programming", extensions: [".ts", ".cts", ".mts"], tmScope: "source.ts", aceMode: "typescript", aliases: ["ts"], codemirrorMode: "javascript", codemirrorMimeType: "application/typescript", interpreters: ["bun", "deno", "ts-node", "tsx"], parsers: ["typescript", "babel-ts"], vscodeLanguageIds: ["typescript"], linguistLanguageId: 378 }, { name: "TSX", type: "programming", extensions: [".tsx"], tmScope: "source.tsx", aceMode: "javascript", codemirrorMode: "jsx", codemirrorMimeType: "text/jsx", group: "TypeScript", parsers: ["typescript", "babel-ts"], vscodeLanguageIds: ["typescriptreact"], linguistLanguageId: 94901924 }], Wr = {};
8
+ Zt(Wr, { canAttachComment: () => di, embed: () => tp, experimentalFeatures: () => iD, getCommentChildNodes: () => mi, getVisitorKeys: () => Hr, handleComments: () => mu, insertPragma: () => mp, isBlockComment: () => ye, isGap: () => fi, massageAstNode: () => co, print: () => oD, printComment: () => No, willPrintOwnComments: () => vu });
9
+ var us = (e, t, n, r) => {
10
+ if (!(e && t == null)) return t.replaceAll ? t.replaceAll(n, r) : n.global ? t.replace(n, r) : t.split(n).join(r);
11
+ }, H = us, as = (e, t, n) => {
12
+ if (!(e && t == null)) return Array.isArray(t) || typeof t == "string" ? t[n < 0 ? t.length + n : n] : t.at(n);
13
+ }, X = as;
14
+ function ss(e) {
15
+ return e !== null && typeof e == "object";
16
+ }
17
+ var os = ss;
18
+ function* is(e, t) {
19
+ let { getVisitorKeys: n, filter: r = () => !0 } = t, u = (a) => os(a) && r(a);
20
+ for (let a of n(e)) {
21
+ let s = e[a];
22
+ if (Array.isArray(s)) for (let o of s) u(o) && (yield o);
23
+ else u(s) && (yield s);
24
+ }
25
+ }
26
+ function* ps(e, t) {
27
+ let n = [e];
28
+ for (let r = 0; r < n.length; r++) {
29
+ let u = n[r];
30
+ for (let a of is(u, t)) yield a, n.push(a);
31
+ }
32
+ }
33
+ function ls(e, { getVisitorKeys: t, predicate: n }) {
34
+ for (let r of ps(e, { getVisitorKeys: t })) if (n(r)) return !0;
35
+ return !1;
36
+ }
37
+ var cs = () => /[#*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](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\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(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\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](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\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-\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](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\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(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\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-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\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;
38
+ function Ds(e) {
39
+ return e === 12288 || e >= 65281 && e <= 65376 || e >= 65504 && e <= 65510;
40
+ }
41
+ function ys(e) {
42
+ 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 >= 9776 && e <= 9783 || e >= 9800 && e <= 9811 || e === 9855 || e >= 9866 && e <= 9871 || 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 <= 12773 || e >= 12783 && e <= 12830 || e >= 12832 && e <= 12871 || e >= 12880 && 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 >= 101631 && 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 >= 119552 && e <= 119638 || e >= 119648 && e <= 119670 || 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 <= 129673 || e >= 129679 && e <= 129734 || e >= 129742 && e <= 129756 || e >= 129759 && e <= 129769 || e >= 129776 && e <= 129784 || e >= 131072 && e <= 196605 || e >= 196608 && e <= 262141;
43
+ }
44
+ var ds = (e) => !(Ds(e) || ys(e)), ms = /[^\x20-\x7F]/u;
45
+ function fs(e) {
46
+ if (!e) return 0;
47
+ if (!ms.test(e)) return e.length;
48
+ e = e.replace(cs(), " ");
49
+ let t = 0;
50
+ for (let n of e) {
51
+ let r = n.codePointAt(0);
52
+ r <= 31 || r >= 127 && r <= 159 || r >= 768 && r <= 879 || (t += ds(r) ? 1 : 2);
53
+ }
54
+ return t;
55
+ }
56
+ var lt = fs;
57
+ function Jn(e) {
58
+ return (t, n, r) => {
59
+ let u = !!(r != null && r.backwards);
60
+ if (n === !1) return !1;
61
+ let { length: a } = t, s = n;
62
+ for (; s >= 0 && s < a; ) {
63
+ let o = t.charAt(s);
64
+ if (e instanceof RegExp) {
65
+ if (!e.test(o)) return s;
66
+ } else if (!e.includes(o)) return s;
67
+ u ? s-- : s++;
68
+ }
69
+ return s === -1 || s === a ? s : !1;
70
+ };
71
+ }
72
+ var ct = Jn(" "), Es = Jn(",; "), Fs = Jn(/[^\n\r]/u);
73
+ function As(e, t, n) {
74
+ let r = !!(n != null && n.backwards);
75
+ if (t === !1) return !1;
76
+ let u = e.charAt(t);
77
+ if (r) {
78
+ if (e.charAt(t - 1) === "\r" && u === `
79
+ `) return t - 2;
80
+ if (u === `
81
+ ` || u === "\r" || u === "\u2028" || u === "\u2029") return t - 1;
82
+ } else {
83
+ if (u === "\r" && e.charAt(t + 1) === `
84
+ `) return t + 2;
85
+ if (u === `
86
+ ` || u === "\r" || u === "\u2028" || u === "\u2029") return t + 1;
87
+ }
88
+ return t;
89
+ }
90
+ var Dt = As;
91
+ function gs(e, t, n = {}) {
92
+ let r = ct(e, n.backwards ? t - 1 : t, n), u = Dt(e, r, n);
93
+ return r !== u;
94
+ }
95
+ var pe = gs;
96
+ function xs(e, t) {
97
+ if (t === !1) return !1;
98
+ if (e.charAt(t) === "/" && e.charAt(t + 1) === "*") {
99
+ for (let n = t + 2; n < e.length; ++n) if (e.charAt(n) === "*" && e.charAt(n + 1) === "/") return n + 2;
100
+ }
101
+ return t;
102
+ }
103
+ var qn = xs;
104
+ function hs(e, t) {
105
+ return t === !1 ? !1 : e.charAt(t) === "/" && e.charAt(t + 1) === "/" ? Fs(e, t) : t;
106
+ }
107
+ var _n = hs;
108
+ function Cs(e, t) {
109
+ let n = null, r = t;
110
+ for (; r !== n; ) n = r, r = Es(e, r), r = qn(e, r), r = ct(e, r);
111
+ return r = _n(e, r), r = Dt(e, r), r !== !1 && pe(e, r);
112
+ }
113
+ var Xn = Cs;
114
+ function Ts(e) {
115
+ return Array.isArray(e) && e.length > 0;
116
+ }
117
+ var J = Ts, Ur = new Proxy(() => {
118
+ }, { get: () => Ur }), $n = Ur, qt = "'", mr = '"';
119
+ function Ss(e, t) {
120
+ let n = t === !0 || t === qt ? qt : mr, r = n === qt ? mr : qt, u = 0, a = 0;
121
+ for (let s of e) s === n ? u++ : s === r && a++;
122
+ return u > a ? r : n;
123
+ }
124
+ var Gr = Ss;
125
+ function bs(e, t, n) {
126
+ let r = t === '"' ? "'" : '"', u = H(!1, e, /\\(.)|(["'])/gsu, (a, s, o) => s === r ? s : o === t ? "\\" + o : o || (n && /^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(s) ? s : "\\" + s));
127
+ return t + u + t;
128
+ }
129
+ var Bs = bs;
130
+ function vs(e, t) {
131
+ $n.ok(/^(?<quote>["']).*\k<quote>$/su.test(e));
132
+ let n = e.slice(1, -1), r = t.parser === "json" || t.parser === "jsonc" || t.parser === "json5" && t.quoteProps === "preserve" && !t.singleQuote ? '"' : t.__isInHtmlAttribute ? "'" : Gr(n, t.singleQuote);
133
+ return e.charAt(0) === r ? e : Bs(n, r, !1);
134
+ }
135
+ var yt = vs, Vr = (e) => Number.isInteger(e) && e >= 0;
136
+ function q(e) {
137
+ var t, n, r;
138
+ 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];
139
+ return a ? Math.min(q(a), u) : u;
140
+ }
141
+ function I(e) {
142
+ var t;
143
+ return ((t = e.range) == null ? void 0 : t[1]) ?? e.end;
144
+ }
145
+ function en(e, t) {
146
+ let n = q(e);
147
+ return Vr(n) && n === q(t);
148
+ }
149
+ function ks(e, t) {
150
+ let n = I(e);
151
+ return Vr(n) && n === I(t);
152
+ }
153
+ function Ps(e, t) {
154
+ return en(e, t) && ks(e, t);
155
+ }
156
+ var Ct = null;
157
+ function bt(e) {
158
+ if (Ct !== null && typeof Ct.property) {
159
+ let t = Ct;
160
+ return Ct = bt.prototype = null, t;
161
+ }
162
+ return Ct = bt.prototype = e ?? /* @__PURE__ */ Object.create(null), new bt();
163
+ }
164
+ var ws = 10;
165
+ for (let e = 0; e <= ws; e++) bt();
166
+ function Is(e) {
167
+ return bt(e);
168
+ }
169
+ function Ns(e, t = "type") {
170
+ Is(e);
171
+ function n(r) {
172
+ let u = r[t], a = e[u];
173
+ if (!Array.isArray(a)) throw Object.assign(new Error(`Missing visitor keys for '${u}'.`), { node: r });
174
+ return a;
175
+ }
176
+ return n;
177
+ }
178
+ var Kr = Ns, js = { ArrayExpression: ["elements"], AssignmentExpression: ["left", "right"], BinaryExpression: ["left", "right"], InterpreterDirective: [], Directive: ["value"], DirectiveLiteral: [], BlockStatement: ["directives", "body"], BreakStatement: ["label"], CallExpression: ["callee", "typeParameters", "typeArguments", "arguments"], CatchClause: ["param", "body"], ConditionalExpression: ["test", "consequent", "alternate"], ContinueStatement: ["label"], DebuggerStatement: [], DoWhileStatement: ["body", "test"], EmptyStatement: [], ExpressionStatement: ["expression"], File: ["program"], ForInStatement: ["left", "right", "body"], ForStatement: ["init", "test", "update", "body"], FunctionDeclaration: ["id", "typeParameters", "params", "predicate", "returnType", "body"], FunctionExpression: ["id", "typeParameters", "params", "returnType", "body"], Identifier: ["typeAnnotation", "decorators"], IfStatement: ["test", "consequent", "alternate"], LabeledStatement: ["label", "body"], StringLiteral: [], NumericLiteral: [], NullLiteral: [], BooleanLiteral: [], RegExpLiteral: [], LogicalExpression: ["left", "right"], MemberExpression: ["object", "property"], NewExpression: ["callee", "typeParameters", "typeArguments", "arguments"], Program: ["directives", "body"], ObjectExpression: ["properties"], ObjectMethod: ["decorators", "key", "typeParameters", "params", "returnType", "body"], ObjectProperty: ["decorators", "key", "value"], 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: ["typeParameters", "params", "predicate", "returnType", "body"], ClassBody: ["body"], ClassExpression: ["decorators", "id", "typeParameters", "superClass", "superTypeParameters", "mixins", "implements", "body", "superTypeArguments"], ClassDeclaration: ["decorators", "id", "typeParameters", "superClass", "superTypeParameters", "mixins", "implements", "body", "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: ["imported", "local"], ImportExpression: ["source", "options"], MetaProperty: ["meta", "property"], ClassMethod: ["decorators", "key", "typeParameters", "params", "returnType", "body"], ObjectPattern: ["decorators", "properties", "typeAnnotation"], SpreadElement: ["argument"], Super: [], TaggedTemplateExpression: ["tag", "typeParameters", "quasi", "typeArguments"], TemplateElement: [], TemplateLiteral: ["quasis", "expressions"], YieldExpression: ["argument"], AwaitExpression: ["argument"], BigIntLiteral: [], ExportNamespaceSpecifier: ["exported"], OptionalMemberExpression: ["object", "property"], OptionalCallExpression: ["callee", "typeParameters", "typeArguments", "arguments"], ClassProperty: ["decorators", "variance", "key", "typeAnnotation", "value"], ClassAccessorProperty: ["decorators", "key", "typeAnnotation", "value"], ClassPrivateProperty: ["decorators", "variance", "key", "typeAnnotation", "value"], ClassPrivateMethod: ["decorators", "key", "typeParameters", "params", "returnType", "body"], PrivateName: ["id"], StaticBlock: ["body"], ImportAttribute: ["key", "value"], 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", "attributes"], DeclareExportAllDeclaration: ["source", "attributes"], DeclaredPredicate: ["value"], ExistsTypeAnnotation: [], FunctionTypeAnnotation: ["typeParameters", "this", "params", "rest", "returnType"], 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: ["variance", "id", "key", "value"], ObjectTypeProperty: ["key", "value", "variance"], ObjectTypeSpreadProperty: ["argument"], OpaqueType: ["id", "typeParameters", "supertype", "impltype"], QualifiedTypeIdentifier: ["qualification", "id"], 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", "typeParameters", "typeArguments", "attributes"], JSXSpreadAttribute: ["argument"], JSXText: [], JSXFragment: ["openingFragment", "children", "closingFragment"], JSXOpeningFragment: [], JSXClosingFragment: [], Noop: [], Placeholder: [], V8IntrinsicIdentifier: [], ArgumentPlaceholder: [], BindExpression: ["object", "callee"], Decorator: ["expression"], DoExpression: ["body"], ExportDefaultSpecifier: ["exported"], 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: ["nameType", "typeAnnotation", "key", "constraint"], TSTemplateLiteralType: ["quasis", "types"], 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"], TSEnumBody: ["members"], TSEnumDeclaration: ["id", "body"], TSEnumMember: ["id", "initializer"], TSModuleDeclaration: ["id", "body"], TSModuleBlock: ["body"], TSImportType: ["argument", "options", "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"], TSExportKeyword: [], TSInterfaceHeritage: ["expression", "typeArguments", "typeParameters"], TSPrivateKeyword: [], TSProtectedKeyword: [], TSPublicKeyword: [], TSReadonlyKeyword: [], TSStaticKeyword: [], 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"], NGChainedExpression: ["expressions"], NGEmptyExpression: [], NGPipeExpression: ["left", "right", "arguments"], NGMicrosyntax: ["body"], NGMicrosyntaxAs: ["key", "alias"], NGMicrosyntaxExpression: ["expression", "alias"], NGMicrosyntaxKey: [], NGMicrosyntaxKeyedExpression: ["key", "expression"], NGMicrosyntaxLet: ["key", "value"], NGRoot: ["node"], JsExpressionRoot: ["node"], JsonRoot: ["node"], TSJSDocAllType: [], TSJSDocUnknownType: [], TSJSDocNullableType: ["typeAnnotation"], TSJSDocNonNullableType: ["typeAnnotation"], NeverTypeAnnotation: [], SatisfiesExpression: ["expression", "typeAnnotation"], UndefinedTypeAnnotation: [], UnknownTypeAnnotation: [] }, Ls = Kr(js), Hr = Ls;
179
+ function Ms(e) {
180
+ let t = new Set(e);
181
+ return (n) => t.has(n?.type);
182
+ }
183
+ var _ = Ms;
184
+ function Os(e) {
185
+ var t;
186
+ return ((t = e.extra) == null ? void 0 : t.raw) ?? e.raw;
187
+ }
188
+ var se = Os, Js = _(["Block", "CommentBlock", "MultiLine"]), ye = Js, qs = _(["AnyTypeAnnotation", "ThisTypeAnnotation", "NumberTypeAnnotation", "VoidTypeAnnotation", "BooleanTypeAnnotation", "BigIntTypeAnnotation", "SymbolTypeAnnotation", "StringTypeAnnotation", "NeverTypeAnnotation", "UndefinedTypeAnnotation", "UnknownTypeAnnotation", "EmptyTypeAnnotation", "MixedTypeAnnotation"]), zr = qs, _s = _(["Line", "CommentLine", "SingleLine", "HashbangComment", "HTMLOpen", "HTMLClose", "Hashbang", "InterpreterDirective"]), Nt = _s;
189
+ function Xs(e, t) {
190
+ let n = t.split(".");
191
+ for (let r = n.length - 1; r >= 0; r--) {
192
+ let u = n[r];
193
+ if (r === 0) return e.type === "Identifier" && e.name === u;
194
+ if (e.type !== "MemberExpression" || e.optional || e.computed || e.property.type !== "Identifier" || e.property.name !== u) return !1;
195
+ e = e.object;
196
+ }
197
+ }
198
+ function $s(e, t) {
199
+ return t.some((n) => Xs(e, n));
200
+ }
201
+ var Rs = $s;
202
+ function Ws({ type: e }) {
203
+ return e.startsWith("TS") && e.endsWith("Keyword");
204
+ }
205
+ var Qr = Ws;
206
+ function Cn(e, t) {
207
+ return t(e) || ls(e, { getVisitorKeys: Hr, predicate: t });
208
+ }
209
+ function Rn(e) {
210
+ return e.type === "AssignmentExpression" || e.type === "BinaryExpression" || e.type === "LogicalExpression" || e.type === "NGPipeExpression" || e.type === "ConditionalExpression" || L(e) || R(e) || e.type === "SequenceExpression" || e.type === "TaggedTemplateExpression" || e.type === "BindExpression" || e.type === "UpdateExpression" && !e.prefix || Ce(e) || e.type === "TSNonNullExpression" || e.type === "ChainExpression";
211
+ }
212
+ function Us(e) {
213
+ return e.expressions ? e.expressions[0] : e.left ?? e.test ?? e.callee ?? e.object ?? e.tag ?? e.argument ?? e.expression;
214
+ }
215
+ function Yr(e) {
216
+ if (e.expressions) return ["expressions", 0];
217
+ if (e.left) return ["left"];
218
+ if (e.test) return ["test"];
219
+ if (e.object) return ["object"];
220
+ if (e.callee) return ["callee"];
221
+ if (e.tag) return ["tag"];
222
+ if (e.argument) return ["argument"];
223
+ if (e.expression) return ["expression"];
224
+ throw new Error("Unexpected node has no left side.");
225
+ }
226
+ var Gs = _(["ExportDefaultDeclaration", "DeclareExportDeclaration", "ExportNamedDeclaration", "ExportAllDeclaration", "DeclareExportAllDeclaration"]), Q = _(["ArrayExpression"]), Ae = _(["ObjectExpression"]);
227
+ function Vs(e) {
228
+ return e.type === "LogicalExpression" && e.operator === "??";
229
+ }
230
+ function be(e) {
231
+ return e.type === "NumericLiteral" || e.type === "Literal" && typeof e.value == "number";
232
+ }
233
+ function Ks(e) {
234
+ return e.type === "BooleanLiteral" || e.type === "Literal" && typeof e.value == "boolean";
235
+ }
236
+ function Zr(e) {
237
+ return e.type === "UnaryExpression" && (e.operator === "+" || e.operator === "-") && be(e.argument);
238
+ }
239
+ function Y(e) {
240
+ return !!(e && (e.type === "StringLiteral" || e.type === "Literal" && typeof e.value == "string"));
241
+ }
242
+ function eu(e) {
243
+ return e.type === "RegExpLiteral" || e.type === "Literal" && !!e.regex;
244
+ }
245
+ var Wn = _(["Literal", "BooleanLiteral", "BigIntLiteral", "DirectiveLiteral", "NullLiteral", "NumericLiteral", "RegExpLiteral", "StringLiteral"]), Hs = _(["Identifier", "ThisExpression", "Super", "PrivateName", "PrivateIdentifier"]), Xe = _(["ObjectTypeAnnotation", "TSTypeLiteral", "TSMappedType"]), kt = _(["FunctionExpression", "ArrowFunctionExpression"]);
246
+ function zs(e) {
247
+ return e.type === "FunctionExpression" || e.type === "ArrowFunctionExpression" && e.body.type === "BlockStatement";
248
+ }
249
+ function ln(e) {
250
+ return L(e) && e.callee.type === "Identifier" && ["async", "inject", "fakeAsync", "waitForAsync"].includes(e.callee.name);
251
+ }
252
+ var K = _(["JSXElement", "JSXFragment"]);
253
+ function tn(e) {
254
+ return e.method && e.kind === "init" || e.kind === "get" || e.kind === "set";
255
+ }
256
+ function tu(e) {
257
+ return (e.type === "ObjectTypeProperty" || e.type === "ObjectTypeInternalSlot") && !e.static && !e.method && e.kind !== "get" && e.kind !== "set" && e.value.type === "FunctionTypeAnnotation";
258
+ }
259
+ function Qs(e) {
260
+ return (e.type === "TypeAnnotation" || e.type === "TSTypeAnnotation") && e.typeAnnotation.type === "FunctionTypeAnnotation" && !e.static && !en(e, e.typeAnnotation);
261
+ }
262
+ var ke = _(["BinaryExpression", "LogicalExpression", "NGPipeExpression"]);
263
+ function it(e) {
264
+ return R(e) || e.type === "BindExpression" && !!e.object;
265
+ }
266
+ var Ys = _(["TSThisType", "NullLiteralTypeAnnotation", "BooleanLiteralTypeAnnotation", "StringLiteralTypeAnnotation", "BigIntLiteralTypeAnnotation", "NumberLiteralTypeAnnotation", "TSLiteralType", "TSTemplateLiteralType"]);
267
+ function Un(e) {
268
+ return Qr(e) || zr(e) || Ys(e) || (e.type === "GenericTypeAnnotation" || e.type === "TSTypeReference") && !e.typeParameters && !e.typeArguments;
269
+ }
270
+ function Zs(e) {
271
+ return e.type === "Identifier" && (e.name === "beforeEach" || e.name === "beforeAll" || e.name === "afterEach" || e.name === "afterAll");
272
+ }
273
+ var eo = ["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"];
274
+ function to(e) {
275
+ return Rs(e, eo);
276
+ }
277
+ function nn(e, t) {
278
+ if (e?.type !== "CallExpression" || e.optional) return !1;
279
+ let n = de(e);
280
+ if (n.length === 1) {
281
+ if (ln(e) && nn(t)) return kt(n[0]);
282
+ if (Zs(e.callee)) return ln(n[0]);
283
+ } else if ((n.length === 2 || n.length === 3) && (n[0].type === "TemplateLiteral" || Y(n[0])) && to(e.callee)) return n[2] && !be(n[2]) ? !1 : (n.length === 2 ? kt(n[1]) : zs(n[1]) && Z(n[1]).length <= 1) || ln(n[1]);
284
+ return !1;
285
+ }
286
+ var nu = (e) => (t) => (t?.type === "ChainExpression" && (t = t.expression), e(t)), L = nu(_(["CallExpression", "OptionalCallExpression"])), R = nu(_(["MemberExpression", "OptionalMemberExpression"]));
287
+ function fr(e, t = 5) {
288
+ return ru(e, t) <= t;
289
+ }
290
+ function ru(e, t) {
291
+ let n = 0;
292
+ for (let r in e) {
293
+ let u = e[r];
294
+ if (u && typeof u == "object" && typeof u.type == "string" && (n++, n += ru(u, t - n)), n > t) return n;
295
+ }
296
+ return n;
297
+ }
298
+ var no = 0.25;
299
+ function Gn(e, t) {
300
+ let { printWidth: n } = t;
301
+ if (h(e)) return !1;
302
+ let r = n * no;
303
+ if (e.type === "ThisExpression" || e.type === "Identifier" && e.name.length <= r || Zr(e) && !h(e.argument)) return !0;
304
+ let u = e.type === "Literal" && "regex" in e && e.regex.pattern || e.type === "RegExpLiteral" && e.pattern;
305
+ return u ? u.length <= r : Y(e) ? yt(se(e), t).length <= r : e.type === "TemplateLiteral" ? e.expressions.length === 0 && e.quasis[0].value.raw.length <= r && !e.quasis[0].value.raw.includes(`
306
+ `) : e.type === "UnaryExpression" ? Gn(e.argument, { printWidth: n }) : e.type === "CallExpression" && e.arguments.length === 0 && e.callee.type === "Identifier" ? e.callee.name.length <= r - 2 : Wn(e);
307
+ }
308
+ function Te(e, t) {
309
+ return K(t) ? rn(t) : h(t, T.Leading, (n) => pe(e, I(n)));
310
+ }
311
+ function Er(e) {
312
+ return e.quasis.some((t) => t.value.raw.includes(`
313
+ `));
314
+ }
315
+ function uu(e, t) {
316
+ return (e.type === "TemplateLiteral" && Er(e) || e.type === "TaggedTemplateExpression" && Er(e.quasi)) && !pe(t, q(e), { backwards: !0 });
317
+ }
318
+ function au(e) {
319
+ if (!h(e)) return !1;
320
+ let t = X(!1, Ke(e, T.Dangling), -1);
321
+ return t && !ye(t);
322
+ }
323
+ function ro(e) {
324
+ if (e.length <= 1) return !1;
325
+ let t = 0;
326
+ for (let n of e) if (kt(n)) {
327
+ if (t += 1, t > 1) return !0;
328
+ } else if (L(n)) {
329
+ for (let r of de(n)) if (kt(r)) return !0;
330
+ }
331
+ return !1;
332
+ }
333
+ function su(e) {
334
+ let { node: t, parent: n, key: r } = e;
335
+ return r === "callee" && L(t) && L(n) && n.arguments.length > 0 && t.arguments.length > n.arguments.length;
336
+ }
337
+ var uo = /* @__PURE__ */ new Set(["!", "-", "+", "~"]);
338
+ function Ee(e, t = 2) {
339
+ if (t <= 0) return !1;
340
+ if (e.type === "ChainExpression" || e.type === "TSNonNullExpression") return Ee(e.expression, t);
341
+ let n = (r) => Ee(r, t - 1);
342
+ if (eu(e)) return lt(e.pattern ?? e.regex.pattern) <= 5;
343
+ if (Wn(e) || Hs(e) || e.type === "ArgumentPlaceholder") return !0;
344
+ if (e.type === "TemplateLiteral") return e.quasis.every((r) => !r.value.raw.includes(`
345
+ `)) && e.expressions.every(n);
346
+ if (Ae(e)) return e.properties.every((r) => !r.computed && (r.shorthand || r.value && n(r.value)));
347
+ if (Q(e)) return e.elements.every((r) => r === null || n(r));
348
+ if (dt(e)) {
349
+ if (e.type === "ImportExpression" || Ee(e.callee, t)) {
350
+ let r = de(e);
351
+ return r.length <= t && r.every(n);
352
+ }
353
+ return !1;
354
+ }
355
+ return R(e) ? Ee(e.object, t) && Ee(e.property, t) : e.type === "UnaryExpression" && uo.has(e.operator) || e.type === "UpdateExpression" ? Ee(e.argument, t) : !1;
356
+ }
357
+ function ao(e) {
358
+ return e;
359
+ }
360
+ function Ie(e, t = "es5") {
361
+ return e.trailingComma === "es5" && t === "es5" || e.trailingComma === "all" && (t === "all" || t === "es5");
362
+ }
363
+ function te(e, t) {
364
+ switch (e.type) {
365
+ case "BinaryExpression":
366
+ case "LogicalExpression":
367
+ case "AssignmentExpression":
368
+ case "NGPipeExpression":
369
+ return te(e.left, t);
370
+ case "MemberExpression":
371
+ case "OptionalMemberExpression":
372
+ return te(e.object, t);
373
+ case "TaggedTemplateExpression":
374
+ return e.tag.type === "FunctionExpression" ? !1 : te(e.tag, t);
375
+ case "CallExpression":
376
+ case "OptionalCallExpression":
377
+ return e.callee.type === "FunctionExpression" ? !1 : te(e.callee, t);
378
+ case "ConditionalExpression":
379
+ return te(e.test, t);
380
+ case "UpdateExpression":
381
+ return !e.prefix && te(e.argument, t);
382
+ case "BindExpression":
383
+ return e.object && te(e.object, t);
384
+ case "SequenceExpression":
385
+ return te(e.expressions[0], t);
386
+ case "ChainExpression":
387
+ case "TSSatisfiesExpression":
388
+ case "TSAsExpression":
389
+ case "TSNonNullExpression":
390
+ case "AsExpression":
391
+ case "AsConstExpression":
392
+ case "SatisfiesExpression":
393
+ return te(e.expression, t);
394
+ default:
395
+ return t(e);
396
+ }
397
+ }
398
+ var Fr = { "==": !0, "!=": !0, "===": !0, "!==": !0 }, _t = { "*": !0, "/": !0, "%": !0 }, Tn = { ">>": !0, ">>>": !0, "<<": !0 };
399
+ function Vn(e, t) {
400
+ return !(Vt(t) !== Vt(e) || e === "**" || Fr[e] && Fr[t] || t === "%" && _t[e] || e === "%" && _t[t] || t !== e && _t[t] && _t[e] || Tn[e] && Tn[t]);
401
+ }
402
+ var so = new Map([["|>"], ["??"], ["||"], ["&&"], ["|"], ["^"], ["&"], ["==", "===", "!=", "!=="], ["<", ">", "<=", ">=", "in", "instanceof"], [">>", "<<", ">>>"], ["+", "-"], ["*", "/", "%"], ["**"]].flatMap((e, t) => e.map((n) => [n, t])));
403
+ function Vt(e) {
404
+ return so.get(e);
405
+ }
406
+ function oo(e) {
407
+ return !!Tn[e] || e === "|" || e === "^" || e === "&";
408
+ }
409
+ function io(e) {
410
+ var t;
411
+ if (e.rest) return !0;
412
+ let n = Z(e);
413
+ return ((t = X(!1, n, -1)) == null ? void 0 : t.type) === "RestElement";
414
+ }
415
+ var cn = /* @__PURE__ */ new WeakMap();
416
+ function Z(e) {
417
+ if (cn.has(e)) return cn.get(e);
418
+ let t = [];
419
+ 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), cn.set(e, t), t;
420
+ }
421
+ function po(e, t) {
422
+ let { node: n } = e, r = 0, u = (a) => t(a, r++);
423
+ 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");
424
+ }
425
+ var Dn = /* @__PURE__ */ new WeakMap();
426
+ function de(e) {
427
+ if (Dn.has(e)) return Dn.get(e);
428
+ if (e.type === "ChainExpression") return de(e.expression);
429
+ let t = e.arguments;
430
+ return (e.type === "ImportExpression" || e.type === "TSImportType") && (t = [e.type === "ImportExpression" ? e.source : e.argument], e.options && t.push(e.options)), Dn.set(e, t), t;
431
+ }
432
+ function Kt(e, t) {
433
+ let { node: n } = e;
434
+ if (n.type === "ChainExpression") return e.call(() => Kt(e, t), "expression");
435
+ n.type === "ImportExpression" || n.type === "TSImportType" ? (e.call((r) => t(r, 0), n.type === "ImportExpression" ? "source" : "argument"), n.options && e.call((r) => t(r, 1), "options")) : e.each(t, "arguments");
436
+ }
437
+ function Ar(e, t) {
438
+ let n = [];
439
+ if (e.type === "ChainExpression" && (e = e.expression, n.push("expression")), e.type === "ImportExpression" || e.type === "TSImportType") {
440
+ if (t === 0 || t === (e.options ? -2 : -1)) return [...n, e.type === "ImportExpression" ? "source" : "argument"];
441
+ if (e.options && (t === 1 || t === -1)) return [...n, "options"];
442
+ throw new RangeError("Invalid argument index");
443
+ }
444
+ if (t < 0 && (t = e.arguments.length + t), t < 0 || t >= e.arguments.length) throw new RangeError("Invalid argument index");
445
+ return [...n, "arguments", t];
446
+ }
447
+ function Ht(e) {
448
+ return e.value.trim() === "prettier-ignore" && !e.unignore;
449
+ }
450
+ function rn(e) {
451
+ return e?.prettierIgnore || h(e, T.PrettierIgnore);
452
+ }
453
+ var T = { Leading: 2, Trailing: 4, Dangling: 8, Block: 16, Line: 32, PrettierIgnore: 64, First: 128, Last: 256 }, ou = (e, t) => {
454
+ if (typeof e == "function" && (t = e, e = 0), e || t) return (n, r, u) => !(e & T.Leading && !n.leading || e & T.Trailing && !n.trailing || e & T.Dangling && (n.leading || n.trailing) || e & T.Block && !ye(n) || e & T.Line && !Nt(n) || e & T.First && r !== 0 || e & T.Last && r !== u.length - 1 || e & T.PrettierIgnore && !Ht(n) || t && !t(n));
455
+ };
456
+ function h(e, t, n) {
457
+ if (!J(e?.comments)) return !1;
458
+ let r = ou(t, n);
459
+ return r ? e.comments.some(r) : !0;
460
+ }
461
+ function Ke(e, t, n) {
462
+ if (!Array.isArray(e?.comments)) return [];
463
+ let r = ou(t, n);
464
+ return r ? e.comments.filter(r) : e.comments;
465
+ }
466
+ var Ne = (e, { originalText: t }) => Xn(t, I(e));
467
+ function dt(e) {
468
+ return L(e) || e.type === "NewExpression" || e.type === "ImportExpression";
469
+ }
470
+ function je(e) {
471
+ return e && (e.type === "ObjectProperty" || e.type === "Property" && !tn(e));
472
+ }
473
+ var Ce = _(["TSAsExpression", "TSSatisfiesExpression", "AsExpression", "AsConstExpression", "SatisfiesExpression"]), $e = _(["TSUnionType", "UnionTypeAnnotation"]), Kn = _(["TSIntersectionType", "IntersectionTypeAnnotation"]), Re = _(["TSConditionalType", "ConditionalTypeAnnotation"]), lo = /* @__PURE__ */ new Set(["range", "raw", "comments", "leadingComments", "trailingComments", "innerComments", "extra", "start", "end", "loc", "flags", "errors", "tokens"]), ot = (e) => {
474
+ for (let t of e.quasis) delete t.value;
475
+ };
476
+ function iu(e, t) {
477
+ var n;
478
+ 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 === "EmptyStatement" || e.type === "JSXText" || e.type === "JSXExpressionContainer" && (e.expression.type === "Literal" || e.expression.type === "StringLiteral") && e.expression.value === " ") return null;
479
+ 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) {
480
+ let { key: u } = e;
481
+ Y(u) || be(u) ? t.key = String(u.value) : u.type === "Identifier" && (t.key = u.name);
482
+ }
483
+ if (e.type === "JSXElement" && e.openingElement.name.name === "style" && e.openingElement.attributes.some((u) => u.type === "JSXAttribute" && u.name.name === "jsx")) for (let { type: u, expression: a } of t.children) u === "JSXExpressionContainer" && a.type === "TemplateLiteral" && ot(a);
484
+ e.type === "JSXAttribute" && e.name.name === "css" && e.value.type === "JSXExpressionContainer" && e.value.expression.type === "TemplateLiteral" && ot(t.value.expression), e.type === "JSXAttribute" && ((n = e.value) == null ? void 0 : n.type) === "Literal" && /["']|&quot;|&apos;/u.test(e.value.value) && (t.value.value = H(!1, e.value.value, /["']|&quot;|&apos;/gu, '"'));
485
+ let r = e.expression || e.callee;
486
+ if (e.type === "Decorator" && r.type === "CallExpression" && r.callee.name === "Component" && r.arguments.length === 1) {
487
+ let u = e.expression.arguments[0].properties;
488
+ for (let [a, s] of t.expression.arguments[0].properties.entries()) switch (u[a].key.name) {
489
+ case "styles":
490
+ Q(s.value) && ot(s.value.elements[0]);
491
+ break;
492
+ case "template":
493
+ s.value.type === "TemplateLiteral" && ot(s.value);
494
+ break;
495
+ }
496
+ }
497
+ 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") && ot(t.quasi), e.type === "TemplateLiteral" && ot(t), e.type === "ChainExpression" && e.expression.type === "TSNonNullExpression" && (t.type = "TSNonNullExpression", t.expression.type = "ChainExpression");
498
+ }
499
+ iu.ignoredProperties = lo;
500
+ var co = iu, Qe = "string", Pe = "array", ft = "cursor", Ye = "indent", Ze = "align", et = "trim", De = "group", We = "fill", Se = "if-break", tt = "indent-if-break", nt = "line-suffix", Ue = "line-suffix-boundary", ie = "line", Le = "label", Me = "break-parent", pu = /* @__PURE__ */ new Set([ft, Ye, Ze, et, De, We, Se, tt, nt, Ue, ie, Le, Me]);
501
+ function Do(e) {
502
+ if (typeof e == "string") return Qe;
503
+ if (Array.isArray(e)) return Pe;
504
+ if (!e) return;
505
+ let { type: t } = e;
506
+ if (pu.has(t)) return t;
507
+ }
508
+ var Ge = Do, yo = (e) => new Intl.ListFormat("en-US", { type: "disjunction" }).format(e);
509
+ function mo(e) {
510
+ let t = e === null ? "null" : typeof e;
511
+ if (t !== "string" && t !== "object") return `Unexpected doc '${t}',
512
+ Expected it to be 'string' or 'object'.`;
513
+ if (Ge(e)) throw new Error("doc is valid.");
514
+ let n = Object.prototype.toString.call(e);
515
+ if (n !== "[object Object]") return `Unexpected doc '${n}'.`;
516
+ let r = yo([...pu].map((u) => `'${u}'`));
517
+ return `Unexpected doc.type '${e.type}'.
518
+ Expected it to be ${r}.`;
519
+ }
520
+ var fo = class extends Error {
521
+ name = "InvalidDocError";
522
+ constructor(e) {
523
+ super(mo(e)), this.doc = e;
524
+ }
525
+ }, Pt = fo, gr = {};
526
+ function Eo(e, t, n, r) {
527
+ let u = [e];
528
+ for (; u.length > 0; ) {
529
+ let a = u.pop();
530
+ if (a === gr) {
531
+ n(u.pop());
532
+ continue;
533
+ }
534
+ n && u.push(a, gr);
535
+ let s = Ge(a);
536
+ if (!s) throw new Pt(a);
537
+ if (t?.(a) !== !1) switch (s) {
538
+ case Pe:
539
+ case We: {
540
+ let o = s === Pe ? a : a.parts;
541
+ for (let i = o.length, l = i - 1; l >= 0; --l) u.push(o[l]);
542
+ break;
543
+ }
544
+ case Se:
545
+ u.push(a.flatContents, a.breakContents);
546
+ break;
547
+ case De:
548
+ if (r && a.expandedStates) for (let o = a.expandedStates.length, i = o - 1; i >= 0; --i) u.push(a.expandedStates[i]);
549
+ else u.push(a.contents);
550
+ break;
551
+ case Ze:
552
+ case Ye:
553
+ case tt:
554
+ case Le:
555
+ case nt:
556
+ u.push(a.contents);
557
+ break;
558
+ case Qe:
559
+ case ft:
560
+ case et:
561
+ case Ue:
562
+ case ie:
563
+ case Me:
564
+ break;
565
+ default:
566
+ throw new Pt(a);
567
+ }
568
+ }
569
+ }
570
+ var Hn = Eo;
571
+ function Et(e, t) {
572
+ if (typeof e == "string") return t(e);
573
+ let n = /* @__PURE__ */ new Map();
574
+ return r(e);
575
+ function r(a) {
576
+ if (n.has(a)) return n.get(a);
577
+ let s = u(a);
578
+ return n.set(a, s), s;
579
+ }
580
+ function u(a) {
581
+ switch (Ge(a)) {
582
+ case Pe:
583
+ return t(a.map(r));
584
+ case We:
585
+ return t({ ...a, parts: a.parts.map(r) });
586
+ case Se:
587
+ return t({ ...a, breakContents: r(a.breakContents), flatContents: r(a.flatContents) });
588
+ case De: {
589
+ let { expandedStates: s, contents: o } = a;
590
+ return s ? (s = s.map(r), o = s[0]) : o = r(o), t({ ...a, contents: o, expandedStates: s });
591
+ }
592
+ case Ze:
593
+ case Ye:
594
+ case tt:
595
+ case Le:
596
+ case nt:
597
+ return t({ ...a, contents: r(a.contents) });
598
+ case Qe:
599
+ case ft:
600
+ case et:
601
+ case Ue:
602
+ case ie:
603
+ case Me:
604
+ return t(a);
605
+ default:
606
+ throw new Pt(a);
607
+ }
608
+ }
609
+ }
610
+ function lu(e, t, n) {
611
+ let r = n, u = !1;
612
+ function a(s) {
613
+ if (u) return !1;
614
+ let o = t(s);
615
+ o !== void 0 && (u = !0, r = o);
616
+ }
617
+ return Hn(e, a), r;
618
+ }
619
+ function Fo(e) {
620
+ if (e.type === De && e.break || e.type === ie && e.hard || e.type === Me) return !0;
621
+ }
622
+ function ne(e) {
623
+ return lu(e, Fo, !1);
624
+ }
625
+ function xr(e) {
626
+ if (e.length > 0) {
627
+ let t = X(!1, e, -1);
628
+ !t.expandedStates && !t.break && (t.break = "propagated");
629
+ }
630
+ return null;
631
+ }
632
+ function Ao(e) {
633
+ let t = /* @__PURE__ */ new Set(), n = [];
634
+ function r(a) {
635
+ if (a.type === Me && xr(n), a.type === De) {
636
+ if (n.push(a), t.has(a)) return !1;
637
+ t.add(a);
638
+ }
639
+ }
640
+ function u(a) {
641
+ a.type === De && n.pop().break && xr(n);
642
+ }
643
+ Hn(e, r, u, !0);
644
+ }
645
+ function go(e) {
646
+ return e.type === ie && !e.hard ? e.soft ? "" : " " : e.type === Se ? e.flatContents : e;
647
+ }
648
+ function Sn(e) {
649
+ return Et(e, go);
650
+ }
651
+ function xo(e) {
652
+ switch (Ge(e)) {
653
+ case We:
654
+ if (e.parts.every((t) => t === "")) return "";
655
+ break;
656
+ case De:
657
+ if (!e.contents && !e.id && !e.break && !e.expandedStates) return "";
658
+ if (e.contents.type === De && e.contents.id === e.id && e.contents.break === e.break && e.contents.expandedStates === e.expandedStates) return e.contents;
659
+ break;
660
+ case Ze:
661
+ case Ye:
662
+ case tt:
663
+ case nt:
664
+ if (!e.contents) return "";
665
+ break;
666
+ case Se:
667
+ if (!e.flatContents && !e.breakContents) return "";
668
+ break;
669
+ case Pe: {
670
+ let t = [];
671
+ for (let n of e) {
672
+ if (!n) continue;
673
+ let [r, ...u] = Array.isArray(n) ? n : [n];
674
+ typeof r == "string" && typeof X(!1, t, -1) == "string" ? t[t.length - 1] += r : t.push(r), t.push(...u);
675
+ }
676
+ return t.length === 0 ? "" : t.length === 1 ? t[0] : t;
677
+ }
678
+ case Qe:
679
+ case ft:
680
+ case et:
681
+ case Ue:
682
+ case ie:
683
+ case Le:
684
+ case Me:
685
+ break;
686
+ default:
687
+ throw new Pt(e);
688
+ }
689
+ return e;
690
+ }
691
+ function zn(e) {
692
+ return Et(e, (t) => xo(t));
693
+ }
694
+ function He(e, t = du) {
695
+ return Et(e, (n) => typeof n == "string" ? N(t, n.split(`
696
+ `)) : n);
697
+ }
698
+ function ho(e) {
699
+ if (e.type === ie) return !0;
700
+ }
701
+ function Co(e) {
702
+ return lu(e, ho, !1);
703
+ }
704
+ function bn(e, t) {
705
+ return e.type === Le ? { ...e, contents: t(e.contents) } : t(e);
706
+ }
707
+ function To(e) {
708
+ let t = !0;
709
+ return Hn(e, (n) => {
710
+ switch (Ge(n)) {
711
+ case Qe:
712
+ if (n === "") break;
713
+ case et:
714
+ case Ue:
715
+ case ie:
716
+ case Me:
717
+ return t = !1, !1;
718
+ }
719
+ }), t;
720
+ }
721
+ var So = () => {
722
+ }, bo = So;
723
+ function A(e) {
724
+ return { type: Ye, contents: e };
725
+ }
726
+ function Be(e, t) {
727
+ return { type: Ze, contents: t, n: e };
728
+ }
729
+ function m(e, t = {}) {
730
+ return bo(t.expandedStates), { type: De, id: t.id, contents: e, break: !!t.shouldBreak, expandedStates: t.expandedStates };
731
+ }
732
+ function Bo(e) {
733
+ return Be(Number.NEGATIVE_INFINITY, e);
734
+ }
735
+ function cu(e) {
736
+ return Be(-1, e);
737
+ }
738
+ function Ve(e, t) {
739
+ return m(e[0], { ...t, expandedStates: e });
740
+ }
741
+ function Du(e) {
742
+ return { type: We, parts: e };
743
+ }
744
+ function w(e, t = "", n = {}) {
745
+ return { type: Se, breakContents: e, flatContents: t, groupId: n.groupId };
746
+ }
747
+ function un(e, t) {
748
+ return { type: tt, contents: e, groupId: t.groupId, negate: t.negate };
749
+ }
750
+ function hr(e) {
751
+ return { type: nt, contents: e };
752
+ }
753
+ var we = { type: Ue }, ve = { type: Me }, yu = { type: ie, hard: !0 }, vo = { type: ie, hard: !0, literal: !0 }, C = { type: ie }, E = { type: ie, soft: !0 }, F = [yu, ve], du = [vo, ve], Xt = { type: ft };
754
+ function N(e, t) {
755
+ let n = [];
756
+ for (let r = 0; r < t.length; r++) r !== 0 && n.push(e), n.push(t[r]);
757
+ return n;
758
+ }
759
+ function ko(e, t, n) {
760
+ let r = e;
761
+ if (t > 0) {
762
+ for (let u = 0; u < Math.floor(t / n); ++u) r = A(r);
763
+ r = Be(t % n, r), r = Be(Number.NEGATIVE_INFINITY, r);
764
+ }
765
+ return r;
766
+ }
767
+ function jt(e, t) {
768
+ return e ? { type: Le, label: e, contents: t } : t;
769
+ }
770
+ function Po(e) {
771
+ if (!ye(e)) return !1;
772
+ let t = `*${e.value}*`.split(`
773
+ `);
774
+ return t.length > 1 && t.every((n) => n.trimStart()[0] === "*");
775
+ }
776
+ var yn = /* @__PURE__ */ new WeakMap();
777
+ function wo(e) {
778
+ return yn.has(e) || yn.set(e, Po(e)), yn.get(e);
779
+ }
780
+ var Io = wo;
781
+ function No(e, t) {
782
+ let n = e.node;
783
+ if (Nt(n)) return t.originalText.slice(q(n), I(n)).trimEnd();
784
+ if (Io(n)) return jo(n);
785
+ if (ye(n)) return ["/*", He(n.value), "*/"];
786
+ throw new Error("Not a comment: " + JSON.stringify(n));
787
+ }
788
+ function jo(e) {
789
+ let t = e.value.split(`
790
+ `);
791
+ return ["/*", N(F, t.map((n, r) => r === 0 ? n.trimEnd() : " " + (r < t.length - 1 ? n.trim() : n.trimStart()))), "*/"];
792
+ }
793
+ var mu = {};
794
+ Zt(mu, { endOfLine: () => Xo, ownLine: () => _o, remaining: () => $o });
795
+ function Lo(e) {
796
+ 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 || "");
797
+ return n.length > 20 && (n = n.slice(0, 19) + "…"), t + (n ? " " + n : "");
798
+ }
799
+ function Qn(e, t) {
800
+ (e.comments ?? (e.comments = [])).push(t), t.printed = !1, t.nodeDescription = Lo(e);
801
+ }
802
+ function ee(e, t) {
803
+ t.leading = !0, t.trailing = !1, Qn(e, t);
804
+ }
805
+ function le(e, t, n) {
806
+ t.leading = !1, t.trailing = !1, n && (t.marker = n), Qn(e, t);
807
+ }
808
+ function W(e, t) {
809
+ t.leading = !1, t.trailing = !0, Qn(e, t);
810
+ }
811
+ function Mo(e, t) {
812
+ let n = null, r = t;
813
+ for (; r !== n; ) n = r, r = ct(e, r), r = qn(e, r), r = _n(e, r), r = Dt(e, r);
814
+ return r;
815
+ }
816
+ var Ft = Mo;
817
+ function Oo(e, t) {
818
+ let n = Ft(e, t);
819
+ return n === !1 ? "" : e.charAt(n);
820
+ }
821
+ var ge = Oo;
822
+ function Jo(e, t, n) {
823
+ for (let r = t; r < n; ++r) if (e.charAt(r) === `
824
+ `) return !0;
825
+ return !1;
826
+ }
827
+ var ce = Jo, dn = /* @__PURE__ */ new WeakMap();
828
+ function qo(e) {
829
+ return dn.has(e) || dn.set(e, ye(e) && e.value[0] === "*" && /@(?:type|satisfies)\b/u.test(e.value)), dn.get(e);
830
+ }
831
+ var fu = qo, Eu = (e, t) => Nt(e) || !ce(t, q(e), I(e));
832
+ function _o(e) {
833
+ return [Su, Au, hu, Zo, Wo, Yn, Zn, Fu, gu, ri, ti, tr, Tu, ui, xu, Cu, er, Uo, ci, bu].some((t) => t(e));
834
+ }
835
+ function Xo(e) {
836
+ return [Ro, hu, Au, Tu, Yn, Zn, Fu, gu, Cu, ei, ni, tr, oi, er, pi, li, Di, bu].some((t) => t(e));
837
+ }
838
+ function $o(e) {
839
+ return [Su, Yn, Zn, Go, Yo, xu, tr, Qo, zo, er, ii].some((t) => t(e));
840
+ }
841
+ function rt(e, t) {
842
+ let n = (e.body || e.properties).find(({ type: r }) => r !== "EmptyStatement");
843
+ n ? ee(n, t) : le(e, t);
844
+ }
845
+ function Bn(e, t) {
846
+ e.type === "BlockStatement" ? rt(e, t) : ee(e, t);
847
+ }
848
+ function Ro({ comment: e, followingNode: t }) {
849
+ return t && fu(e) ? (ee(t, e), !0) : !1;
850
+ }
851
+ function Yn({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r, text: u }) {
852
+ if (n?.type !== "IfStatement" || !r) return !1;
853
+ if (ge(u, I(e)) === ")") return W(t, e), !0;
854
+ if (t === n.consequent && r === n.alternate) {
855
+ let a = Ft(u, I(n.consequent));
856
+ if (q(e) < a || n.alternate.type === "BlockStatement") return t.type === "BlockStatement" || Eu(e, u) && !ce(u, q(t), q(e)) ? (W(t, e), !0) : (le(n, e), !0);
857
+ }
858
+ return r.type === "BlockStatement" ? (rt(r, e), !0) : r.type === "IfStatement" ? (Bn(r.consequent, e), !0) : n.consequent === r ? (ee(r, e), !0) : !1;
859
+ }
860
+ function Zn({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r, text: u }) {
861
+ return n?.type !== "WhileStatement" || !r ? !1 : ge(u, I(e)) === ")" ? (W(t, e), !0) : r.type === "BlockStatement" ? (rt(r, e), !0) : n.body === r ? (ee(r, e), !0) : !1;
862
+ }
863
+ function Fu({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r }) {
864
+ return n?.type !== "TryStatement" && n?.type !== "CatchClause" || !r ? !1 : n.type === "CatchClause" && t ? (W(t, e), !0) : r.type === "BlockStatement" ? (rt(r, e), !0) : r.type === "TryStatement" ? (Bn(r.finalizer, e), !0) : r.type === "CatchClause" ? (Bn(r.body, e), !0) : !1;
865
+ }
866
+ function Wo({ comment: e, enclosingNode: t, followingNode: n }) {
867
+ return R(t) && n?.type === "Identifier" ? (ee(t, e), !0) : !1;
868
+ }
869
+ function Uo({ comment: e, enclosingNode: t, followingNode: n, options: r }) {
870
+ return !r.experimentalTernaries || !(t?.type === "ConditionalExpression" || Re(t)) ? !1 : n?.type === "ConditionalExpression" || Re(n) ? (le(t, e), !0) : !1;
871
+ }
872
+ function Au({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r, text: u, options: a }) {
873
+ let s = t && !ce(u, I(t), q(e));
874
+ return (!t || !s) && (n?.type === "ConditionalExpression" || Re(n)) && r ? a.experimentalTernaries && n.alternate === r && !(ye(e) && !ce(a.originalText, q(e), I(e))) ? (le(n, e), !0) : (ee(r, e), !0) : !1;
875
+ }
876
+ function Go({ comment: e, precedingNode: t, enclosingNode: n }) {
877
+ return je(n) && n.shorthand && n.key === t && n.value.type === "AssignmentPattern" ? (W(n.value.left, e), !0) : !1;
878
+ }
879
+ var Vo = /* @__PURE__ */ new Set(["ClassDeclaration", "ClassExpression", "DeclareClass", "DeclareInterface", "InterfaceDeclaration", "TSInterfaceDeclaration"]);
880
+ function gu({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r }) {
881
+ if (Vo.has(n?.type)) {
882
+ if (J(n.decorators) && r?.type !== "Decorator") return W(X(!1, n.decorators, -1), e), !0;
883
+ if (n.body && r === n.body) return rt(n.body, e), !0;
884
+ if (r) {
885
+ if (n.superClass && r === n.superClass && t && (t === n.id || t === n.typeParameters)) return W(t, e), !0;
886
+ 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) ? W(t, e) : le(n, e, u), !0;
887
+ }
888
+ }
889
+ return !1;
890
+ }
891
+ var Ko = /* @__PURE__ */ new Set(["ClassMethod", "ClassProperty", "PropertyDefinition", "TSAbstractPropertyDefinition", "TSAbstractMethodDefinition", "TSDeclareMethod", "MethodDefinition", "ClassAccessorProperty", "AccessorProperty", "TSAbstractAccessorProperty", "TSParameterProperty"]);
892
+ function xu({ comment: e, precedingNode: t, enclosingNode: n, text: r }) {
893
+ 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?.type === "Decorator" && Ko.has(n?.type) && (Nt(e) || e.placement === "ownLine") ? (W(t, e), !0) : !1;
894
+ }
895
+ var Ho = /* @__PURE__ */ new Set(["FunctionDeclaration", "FunctionExpression", "ClassMethod", "MethodDefinition", "ObjectMethod"]);
896
+ function zo({ comment: e, precedingNode: t, enclosingNode: n, text: r }) {
897
+ return ge(r, I(e)) !== "(" ? !1 : t && Ho.has(n?.type) ? (W(t, e), !0) : !1;
898
+ }
899
+ function Qo({ comment: e, enclosingNode: t, text: n }) {
900
+ if (t?.type !== "ArrowFunctionExpression") return !1;
901
+ let r = Ft(n, I(e));
902
+ return r !== !1 && n.slice(r, r + 2) === "=>" ? (le(t, e), !0) : !1;
903
+ }
904
+ function Yo({ comment: e, enclosingNode: t, text: n }) {
905
+ return ge(n, I(e)) !== ")" ? !1 : t && (Bu(t) && Z(t).length === 0 || dt(t) && de(t).length === 0) ? (le(t, e), !0) : (t?.type === "MethodDefinition" || t?.type === "TSAbstractMethodDefinition") && Z(t.value).length === 0 ? (le(t.value, e), !0) : !1;
906
+ }
907
+ function Zo({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r, text: u }) {
908
+ return t?.type === "ComponentTypeParameter" && (n?.type === "DeclareComponent" || n?.type === "ComponentTypeAnnotation") && r?.type !== "ComponentTypeParameter" || (t?.type === "ComponentParameter" || t?.type === "RestElement") && n?.type === "ComponentDeclaration" && ge(u, I(e)) === ")" ? (W(t, e), !0) : !1;
909
+ }
910
+ function hu({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r, text: u }) {
911
+ return t?.type === "FunctionTypeParam" && n?.type === "FunctionTypeAnnotation" && r?.type !== "FunctionTypeParam" || (t?.type === "Identifier" || t?.type === "AssignmentPattern" || t?.type === "ObjectPattern" || t?.type === "ArrayPattern" || t?.type === "RestElement" || t?.type === "TSParameterProperty") && Bu(n) && ge(u, I(e)) === ")" ? (W(t, e), !0) : !ye(e) && (n?.type === "FunctionDeclaration" || n?.type === "FunctionExpression" || n?.type === "ObjectMethod") && r?.type === "BlockStatement" && n.body === r && Ft(u, I(e)) === q(r) ? (rt(r, e), !0) : !1;
912
+ }
913
+ function Cu({ comment: e, enclosingNode: t }) {
914
+ return t?.type === "LabeledStatement" ? (ee(t, e), !0) : !1;
915
+ }
916
+ function er({ comment: e, enclosingNode: t }) {
917
+ return (t?.type === "ContinueStatement" || t?.type === "BreakStatement") && !t.label ? (W(t, e), !0) : !1;
918
+ }
919
+ function ei({ comment: e, precedingNode: t, enclosingNode: n }) {
920
+ return L(n) && t && n.callee === t && n.arguments.length > 0 ? (ee(n.arguments[0], e), !0) : !1;
921
+ }
922
+ function ti({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r }) {
923
+ return $e(n) ? (Ht(e) && (r.prettierIgnore = !0, e.unignore = !0), t ? (W(t, e), !0) : !1) : ($e(r) && Ht(e) && (r.types[0].prettierIgnore = !0, e.unignore = !0), !1);
924
+ }
925
+ function ni({ comment: e, enclosingNode: t }) {
926
+ return je(t) ? (ee(t, e), !0) : !1;
927
+ }
928
+ function tr({ comment: e, enclosingNode: t, ast: n, isLastComment: r }) {
929
+ var u;
930
+ return ((u = n?.body) == null ? void 0 : u.length) === 0 ? (r ? le(n, e) : ee(n, e), !0) : t?.type === "Program" && t.body.length === 0 && !J(t.directives) ? (r ? le(t, e) : ee(t, e), !0) : !1;
931
+ }
932
+ function ri({ comment: e, enclosingNode: t }) {
933
+ return t?.type === "ForInStatement" || t?.type === "ForOfStatement" ? (ee(t, e), !0) : !1;
934
+ }
935
+ function Tu({ comment: e, precedingNode: t, enclosingNode: n, text: r }) {
936
+ if (n?.type === "ImportSpecifier" || n?.type === "ExportSpecifier") return ee(n, e), !0;
937
+ let u = t?.type === "ImportSpecifier" && n?.type === "ImportDeclaration", a = t?.type === "ExportSpecifier" && n?.type === "ExportNamedDeclaration";
938
+ return (u || a) && pe(r, I(e)) ? (W(t, e), !0) : !1;
939
+ }
940
+ function ui({ comment: e, enclosingNode: t }) {
941
+ return t?.type === "AssignmentPattern" ? (ee(t, e), !0) : !1;
942
+ }
943
+ var ai = /* @__PURE__ */ new Set(["VariableDeclarator", "AssignmentExpression", "TypeAlias", "TSTypeAliasDeclaration"]), si = /* @__PURE__ */ new Set(["ObjectExpression", "ArrayExpression", "TemplateLiteral", "TaggedTemplateExpression", "ObjectTypeAnnotation", "TSTypeLiteral"]);
944
+ function oi({ comment: e, enclosingNode: t, followingNode: n }) {
945
+ return ai.has(t?.type) && n && (si.has(n.type) || ye(e)) ? (ee(n, e), !0) : !1;
946
+ }
947
+ function ii({ comment: e, enclosingNode: t, followingNode: n, text: r }) {
948
+ return !n && (t?.type === "TSMethodSignature" || t?.type === "TSDeclareFunction" || t?.type === "TSAbstractMethodDefinition") && ge(r, I(e)) === ";" ? (W(t, e), !0) : !1;
949
+ }
950
+ function Su({ comment: e, enclosingNode: t, followingNode: n }) {
951
+ if (Ht(e) && t?.type === "TSMappedType" && n === t.key) return t.prettierIgnore = !0, e.unignore = !0, !0;
952
+ }
953
+ function bu({ comment: e, precedingNode: t, enclosingNode: n }) {
954
+ if (n?.type === "TSMappedType" && !t) return le(n, e), !0;
955
+ }
956
+ function pi({ comment: e, enclosingNode: t, followingNode: n }) {
957
+ return !t || t.type !== "SwitchCase" || t.test || !n || n !== t.consequent[0] ? !1 : (n.type === "BlockStatement" && Nt(e) ? rt(n, e) : le(t, e), !0);
958
+ }
959
+ function li({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r }) {
960
+ return $e(t) && ((n.type === "TSArrayType" || n.type === "ArrayTypeAnnotation") && !r || Kn(n)) ? (W(X(!1, t.types, -1), e), !0) : !1;
961
+ }
962
+ function ci({ comment: e, enclosingNode: t, precedingNode: n, followingNode: r }) {
963
+ if ((t?.type === "ObjectPattern" || t?.type === "ArrayPattern") && r?.type === "TSTypeAnnotation") return n ? W(n, e) : le(t, e), !0;
964
+ }
965
+ function Di({ comment: e, precedingNode: t, enclosingNode: n, followingNode: r, text: u }) {
966
+ return !r && n?.type === "UnaryExpression" && (t?.type === "LogicalExpression" || t?.type === "BinaryExpression") && ce(u, q(n.argument), q(t.right)) && Eu(e, u) && !ce(u, q(t.right), q(e)) ? (W(t.right, e), !0) : !1;
967
+ }
968
+ var Bu = _(["ArrowFunctionExpression", "FunctionExpression", "FunctionDeclaration", "ObjectMethod", "ClassMethod", "TSDeclareFunction", "TSCallSignatureDeclaration", "TSConstructSignatureDeclaration", "TSMethodSignature", "TSConstructorType", "TSFunctionType", "TSDeclareMethod"]), yi = /* @__PURE__ */ new Set(["EmptyStatement", "TemplateElement", "TSEmptyBodyFunctionExpression", "ChainExpression"]);
969
+ function di(e) {
970
+ return !yi.has(e.type);
971
+ }
972
+ function mi(e, t) {
973
+ var n;
974
+ if ((t.parser === "typescript" || t.parser === "flow" || t.parser === "hermes" || t.parser === "acorn" || t.parser === "oxc" || t.parser === "oxc-ts" || 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 && !J(e.value.typeParameters) && e.value.body) return [...e.decorators || [], e.key, e.value.body];
975
+ }
976
+ function vu(e) {
977
+ let { node: t, parent: n } = e;
978
+ return (K(t) || n && (n.type === "JSXSpreadAttribute" || n.type === "JSXSpreadChild" || $e(n) || (n.type === "ClassDeclaration" || n.type === "ClassExpression") && n.superClass === t)) && (!rn(t) || $e(n));
979
+ }
980
+ function fi(e, { parser: t }) {
981
+ if (t === "flow" || t === "hermes" || t === "babel-flow") return e = H(!1, e, /[\s(]/gu, ""), e === "" || e === "/*" || e === "/*::";
982
+ }
983
+ function Ei(e) {
984
+ switch (e) {
985
+ case "cr":
986
+ return "\r";
987
+ case "crlf":
988
+ return `\r
989
+ `;
990
+ default:
991
+ return `
992
+ `;
993
+ }
994
+ }
995
+ var ae = /* @__PURE__ */ Symbol("MODE_BREAK"), he = /* @__PURE__ */ Symbol("MODE_FLAT"), pt = /* @__PURE__ */ Symbol("cursor"), vn = /* @__PURE__ */ Symbol("DOC_FILL_PRINTED_LENGTH");
996
+ function ku() {
997
+ return { value: "", length: 0, queue: [] };
998
+ }
999
+ function Fi(e, t) {
1000
+ return kn(e, { type: "indent" }, t);
1001
+ }
1002
+ function Ai(e, t, n) {
1003
+ return t === Number.NEGATIVE_INFINITY ? e.root || ku() : t < 0 ? kn(e, { type: "dedent" }, n) : t ? t.type === "root" ? { ...e, root: e } : kn(e, { type: typeof t == "string" ? "stringAlign" : "numberAlign", n: t }, n) : e;
1004
+ }
1005
+ function kn(e, t, n) {
1006
+ let r = t.type === "dedent" ? e.queue.slice(0, -1) : [...e.queue, t], u = "", a = 0, s = 0, o = 0;
1007
+ for (let y of r) switch (y.type) {
1008
+ case "indent":
1009
+ d(), n.useTabs ? i(1) : l(n.tabWidth);
1010
+ break;
1011
+ case "stringAlign":
1012
+ d(), u += y.n, a += y.n.length;
1013
+ break;
1014
+ case "numberAlign":
1015
+ s += 1, o += y.n;
1016
+ break;
1017
+ default:
1018
+ throw new Error(`Unexpected type '${y.type}'`);
1019
+ }
1020
+ return c(), { ...e, value: u, length: a, queue: r };
1021
+ function i(y) {
1022
+ u += " ".repeat(y), a += n.tabWidth * y;
1023
+ }
1024
+ function l(y) {
1025
+ u += " ".repeat(y), a += y;
1026
+ }
1027
+ function d() {
1028
+ n.useTabs ? D() : c();
1029
+ }
1030
+ function D() {
1031
+ s > 0 && i(s), p();
1032
+ }
1033
+ function c() {
1034
+ o > 0 && l(o), p();
1035
+ }
1036
+ function p() {
1037
+ s = 0, o = 0;
1038
+ }
1039
+ }
1040
+ function Pn(e) {
1041
+ let t = 0, n = 0, r = e.length;
1042
+ e: for (; r--; ) {
1043
+ let u = e[r];
1044
+ if (u === pt) {
1045
+ n++;
1046
+ continue;
1047
+ }
1048
+ for (let a = u.length - 1; a >= 0; a--) {
1049
+ let s = u[a];
1050
+ if (s === " " || s === " ") t++;
1051
+ else {
1052
+ e[r] = u.slice(0, a + 1);
1053
+ break e;
1054
+ }
1055
+ }
1056
+ }
1057
+ if (t > 0 || n > 0) for (e.length = r + 1; n-- > 0; ) e.push(pt);
1058
+ return t;
1059
+ }
1060
+ function $t(e, t, n, r, u, a) {
1061
+ if (n === Number.POSITIVE_INFINITY) return !0;
1062
+ let s = t.length, o = [e], i = [];
1063
+ for (; n >= 0; ) {
1064
+ if (o.length === 0) {
1065
+ if (s === 0) return !0;
1066
+ o.push(t[--s]);
1067
+ continue;
1068
+ }
1069
+ let { mode: l, doc: d } = o.pop(), D = Ge(d);
1070
+ switch (D) {
1071
+ case Qe:
1072
+ i.push(d), n -= lt(d);
1073
+ break;
1074
+ case Pe:
1075
+ case We: {
1076
+ let c = D === Pe ? d : d.parts, p = d[vn] ?? 0;
1077
+ for (let y = c.length - 1; y >= p; y--) o.push({ mode: l, doc: c[y] });
1078
+ break;
1079
+ }
1080
+ case Ye:
1081
+ case Ze:
1082
+ case tt:
1083
+ case Le:
1084
+ o.push({ mode: l, doc: d.contents });
1085
+ break;
1086
+ case et:
1087
+ n += Pn(i);
1088
+ break;
1089
+ case De: {
1090
+ if (a && d.break) return !1;
1091
+ let c = d.break ? ae : l, p = d.expandedStates && c === ae ? X(!1, d.expandedStates, -1) : d.contents;
1092
+ o.push({ mode: c, doc: p });
1093
+ break;
1094
+ }
1095
+ case Se: {
1096
+ let c = (d.groupId ? u[d.groupId] || he : l) === ae ? d.breakContents : d.flatContents;
1097
+ c && o.push({ mode: l, doc: c });
1098
+ break;
1099
+ }
1100
+ case ie:
1101
+ if (l === ae || d.hard) return !0;
1102
+ d.soft || (i.push(" "), n--);
1103
+ break;
1104
+ case nt:
1105
+ r = !0;
1106
+ break;
1107
+ case Ue:
1108
+ if (r) return !1;
1109
+ break;
1110
+ }
1111
+ }
1112
+ return !1;
1113
+ }
1114
+ function Pu(e, t) {
1115
+ let n = {}, r = t.printWidth, u = Ei(t.endOfLine), a = 0, s = [{ ind: ku(), mode: ae, doc: e }], o = [], i = !1, l = [], d = 0;
1116
+ for (Ao(e); s.length > 0; ) {
1117
+ let { ind: c, mode: p, doc: y } = s.pop();
1118
+ switch (Ge(y)) {
1119
+ case Qe: {
1120
+ let f = u !== `
1121
+ ` ? H(!1, y, `
1122
+ `, u) : y;
1123
+ o.push(f), s.length > 0 && (a += lt(f));
1124
+ break;
1125
+ }
1126
+ case Pe:
1127
+ for (let f = y.length - 1; f >= 0; f--) s.push({ ind: c, mode: p, doc: y[f] });
1128
+ break;
1129
+ case ft:
1130
+ if (d >= 2) throw new Error("There are too many 'cursor' in doc.");
1131
+ o.push(pt), d++;
1132
+ break;
1133
+ case Ye:
1134
+ s.push({ ind: Fi(c, t), mode: p, doc: y.contents });
1135
+ break;
1136
+ case Ze:
1137
+ s.push({ ind: Ai(c, y.n, t), mode: p, doc: y.contents });
1138
+ break;
1139
+ case et:
1140
+ a -= Pn(o);
1141
+ break;
1142
+ case De:
1143
+ switch (p) {
1144
+ case he:
1145
+ if (!i) {
1146
+ s.push({ ind: c, mode: y.break ? ae : he, doc: y.contents });
1147
+ break;
1148
+ }
1149
+ case ae: {
1150
+ i = !1;
1151
+ let f = { ind: c, mode: he, doc: y.contents }, g = r - a, S = l.length > 0;
1152
+ if (!y.break && $t(f, s, g, S, n)) s.push(f);
1153
+ else if (y.expandedStates) {
1154
+ let b = X(!1, y.expandedStates, -1);
1155
+ if (y.break) {
1156
+ s.push({ ind: c, mode: ae, doc: b });
1157
+ break;
1158
+ } else for (let x = 1; x < y.expandedStates.length + 1; x++) if (x >= y.expandedStates.length) {
1159
+ s.push({ ind: c, mode: ae, doc: b });
1160
+ break;
1161
+ } else {
1162
+ let j = y.expandedStates[x], v = { ind: c, mode: he, doc: j };
1163
+ if ($t(v, s, g, S, n)) {
1164
+ s.push(v);
1165
+ break;
1166
+ }
1167
+ }
1168
+ } else s.push({ ind: c, mode: ae, doc: y.contents });
1169
+ break;
1170
+ }
1171
+ }
1172
+ y.id && (n[y.id] = X(!1, s, -1).mode);
1173
+ break;
1174
+ case We: {
1175
+ let f = r - a, g = y[vn] ?? 0, { parts: S } = y, b = S.length - g;
1176
+ if (b === 0) break;
1177
+ let x = S[g + 0], j = S[g + 1], v = { ind: c, mode: he, doc: x }, B = { ind: c, mode: ae, doc: x }, M = $t(v, [], f, l.length > 0, n, !0);
1178
+ if (b === 1) {
1179
+ M ? s.push(v) : s.push(B);
1180
+ break;
1181
+ }
1182
+ let k = { ind: c, mode: he, doc: j }, O = { ind: c, mode: ae, doc: j };
1183
+ if (b === 2) {
1184
+ M ? s.push(k, v) : s.push(O, B);
1185
+ break;
1186
+ }
1187
+ let G = S[g + 2], U = { ind: c, mode: p, doc: { ...y, [vn]: g + 2 } };
1188
+ $t({ ind: c, mode: he, doc: [x, j, G] }, [], f, l.length > 0, n, !0) ? s.push(U, k, v) : M ? s.push(U, O, v) : s.push(U, O, B);
1189
+ break;
1190
+ }
1191
+ case Se:
1192
+ case tt: {
1193
+ let f = y.groupId ? n[y.groupId] : p;
1194
+ if (f === ae) {
1195
+ let g = y.type === Se ? y.breakContents : y.negate ? y.contents : A(y.contents);
1196
+ g && s.push({ ind: c, mode: p, doc: g });
1197
+ }
1198
+ if (f === he) {
1199
+ let g = y.type === Se ? y.flatContents : y.negate ? A(y.contents) : y.contents;
1200
+ g && s.push({ ind: c, mode: p, doc: g });
1201
+ }
1202
+ break;
1203
+ }
1204
+ case nt:
1205
+ l.push({ ind: c, mode: p, doc: y.contents });
1206
+ break;
1207
+ case Ue:
1208
+ l.length > 0 && s.push({ ind: c, mode: p, doc: yu });
1209
+ break;
1210
+ case ie:
1211
+ switch (p) {
1212
+ case he:
1213
+ if (y.hard) i = !0;
1214
+ else {
1215
+ y.soft || (o.push(" "), a += 1);
1216
+ break;
1217
+ }
1218
+ case ae:
1219
+ if (l.length > 0) {
1220
+ s.push({ ind: c, mode: p, doc: y }, ...l.reverse()), l.length = 0;
1221
+ break;
1222
+ }
1223
+ y.literal ? c.root ? (o.push(u, c.root.value), a = c.root.length) : (o.push(u), a = 0) : (a -= Pn(o), o.push(u + c.value), a = c.length);
1224
+ break;
1225
+ }
1226
+ break;
1227
+ case Le:
1228
+ s.push({ ind: c, mode: p, doc: y.contents });
1229
+ break;
1230
+ case Me:
1231
+ break;
1232
+ default:
1233
+ throw new Pt(y);
1234
+ }
1235
+ s.length === 0 && l.length > 0 && (s.push(...l.reverse()), l.length = 0);
1236
+ }
1237
+ let D = o.indexOf(pt);
1238
+ if (D !== -1) {
1239
+ let c = o.indexOf(pt, D + 1);
1240
+ if (c === -1) return { formatted: o.filter((g) => g !== pt).join("") };
1241
+ let p = o.slice(0, D).join(""), y = o.slice(D + 1, c).join(""), f = o.slice(c + 1).join("");
1242
+ return { formatted: p + y + f, cursorNodeStart: p.length, cursorNodeText: y };
1243
+ }
1244
+ return { formatted: o.join("") };
1245
+ }
1246
+ function gi(e, t, n = 0) {
1247
+ let r = 0;
1248
+ for (let u = n; u < e.length; ++u) e[u] === " " ? r = r + t - r % t : r++;
1249
+ return r;
1250
+ }
1251
+ var xi = gi;
1252
+ function hi(e, t) {
1253
+ let n = e.lastIndexOf(`
1254
+ `);
1255
+ return n === -1 ? 0 : xi(e.slice(n + 1).match(/^[\t ]*/u)[0], t);
1256
+ }
1257
+ var Ci = hi;
1258
+ function wu(e, t, n) {
1259
+ let { node: r } = e;
1260
+ if (r.type === "TemplateLiteral" && Bi(e)) {
1261
+ let i = Si(e, t, n);
1262
+ if (i) return i;
1263
+ }
1264
+ let u = "expressions";
1265
+ r.type === "TSTemplateLiteralType" && (u = "types");
1266
+ let a = [], s = e.map(n, u);
1267
+ a.push(we, "`");
1268
+ let o = 0;
1269
+ return e.each(({ index: i, node: l }) => {
1270
+ if (a.push(n()), l.tail) return;
1271
+ let { tabWidth: d } = t, D = l.value.raw, c = D.includes(`
1272
+ `) ? Ci(D, d) : o;
1273
+ o = c;
1274
+ let p = s[i], y = r[u][i], f = ce(t.originalText, I(l), q(r.quasis[i + 1]));
1275
+ if (!f) {
1276
+ let S = Pu(p, { ...t, printWidth: Number.POSITIVE_INFINITY }).formatted;
1277
+ S.includes(`
1278
+ `) ? f = !0 : p = S;
1279
+ }
1280
+ f && (h(y) || y.type === "Identifier" || R(y) || y.type === "ConditionalExpression" || y.type === "SequenceExpression" || Ce(y) || ke(y)) && (p = [A([E, p]), E]);
1281
+ let g = c === 0 && D.endsWith(`
1282
+ `) ? Be(Number.NEGATIVE_INFINITY, p) : ko(p, c, d);
1283
+ a.push(m(["${", g, we, "}"]));
1284
+ }, "quasis"), a.push("`"), a;
1285
+ }
1286
+ function Ti(e, t, n) {
1287
+ let r = n("quasi"), { node: u } = e, a = "", s = Ke(u.quasi, T.Leading)[0];
1288
+ return s && (ce(t.originalText, I(u.typeArguments ?? u.typeParameters ?? u.tag), q(s)) ? a = E : a = " "), jt(r.label && { tagged: !0, ...r.label }, [n("tag"), n(u.typeArguments ? "typeArguments" : "typeParameters"), a, we, r]);
1289
+ }
1290
+ function Si(e, t, n) {
1291
+ let { node: r } = e, u = r.quasis[0].value.raw.trim().split(/\s*\|\s*/u);
1292
+ if (u.length > 1 || u.some((a) => a.length > 0)) {
1293
+ t.__inJestEach = !0;
1294
+ let a = e.map(n, "expressions");
1295
+ t.__inJestEach = !1;
1296
+ let s = [], o = a.map((c) => "${" + Pu(c, { ...t, printWidth: Number.POSITIVE_INFINITY, endOfLine: "lf" }).formatted + "}"), i = [{ hasLineBreak: !1, cells: [] }];
1297
+ for (let c = 1; c < r.quasis.length; c++) {
1298
+ let p = X(!1, i, -1), y = o[c - 1];
1299
+ p.cells.push(y), y.includes(`
1300
+ `) && (p.hasLineBreak = !0), r.quasis[c].value.raw.includes(`
1301
+ `) && i.push({ hasLineBreak: !1, cells: [] });
1302
+ }
1303
+ let l = Math.max(u.length, ...i.map((c) => c.cells.length)), d = Array.from({ length: l }).fill(0), D = [{ cells: u }, ...i.filter((c) => c.cells.length > 0)];
1304
+ for (let { cells: c } of D.filter((p) => !p.hasLineBreak)) for (let [p, y] of c.entries()) d[p] = Math.max(d[p], lt(y));
1305
+ return s.push(we, "`", A([F, N(F, D.map((c) => N(" | ", c.cells.map((p, y) => c.hasLineBreak ? p : p + " ".repeat(d[y] - lt(p))))))]), F, "`"), s;
1306
+ }
1307
+ }
1308
+ function bi(e, t) {
1309
+ let { node: n } = e, r = t();
1310
+ return h(n) && (r = m([A([E, r]), E])), ["${", r, we, "}"];
1311
+ }
1312
+ function nr(e, t) {
1313
+ return e.map((n) => bi(n, t), "expressions");
1314
+ }
1315
+ function Iu(e, t) {
1316
+ return Et(e, (n) => typeof n == "string" ? t ? H(!1, n, /(\\*)`/gu, "$1$1\\`") : Nu(n) : n);
1317
+ }
1318
+ function Nu(e) {
1319
+ return H(!1, e, /([\\`]|\$\{)/gu, String.raw`\$1`);
1320
+ }
1321
+ function Bi({ node: e, parent: t }) {
1322
+ let n = /^[fx]?(?:describe|it|test)$/u;
1323
+ 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));
1324
+ }
1325
+ var wn = [(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"];
1326
+ function vi(e) {
1327
+ let t = (r) => r.type === "TemplateLiteral", n = (r, u) => je(r) && !r.computed && r.key.type === "Identifier" && r.key.name === "styles" && u === "value";
1328
+ return e.match(t, (r, u) => Q(r) && u === "elements", n, ...wn) || e.match(t, n, ...wn);
1329
+ }
1330
+ function ki(e) {
1331
+ return e.match((t) => t.type === "TemplateLiteral", (t, n) => je(t) && !t.computed && t.key.type === "Identifier" && t.key.name === "template" && n === "value", ...wn);
1332
+ }
1333
+ function mn(e, t) {
1334
+ return h(e, T.Block | T.Leading, ({ value: n }) => n === ` ${t} `);
1335
+ }
1336
+ function ju({ node: e, parent: t }, n) {
1337
+ return mn(e, n) || Pi(t) && mn(t, n) || t.type === "ExpressionStatement" && mn(t, n);
1338
+ }
1339
+ function Pi(e) {
1340
+ return e.type === "AsConstExpression" || e.type === "TSAsExpression" && e.typeAnnotation.type === "TSTypeReference" && e.typeAnnotation.typeName.type === "Identifier" && e.typeAnnotation.typeName.name === "const";
1341
+ }
1342
+ async function wi(e, t, n) {
1343
+ let { node: r } = n, u = r.quasis.map((d) => d.value.raw), a = 0, s = u.reduce((d, D, c) => c === 0 ? D : d + "@prettier-placeholder-" + a++ + "-id" + D, ""), o = await e(s, { parser: "scss" }), i = nr(n, t), l = Ii(o, i);
1344
+ if (!l) throw new Error("Couldn't insert all the expressions");
1345
+ return ["`", A([F, l]), E, "`"];
1346
+ }
1347
+ function Ii(e, t) {
1348
+ if (!J(t)) return e;
1349
+ let n = 0, r = Et(zn(e), (u) => typeof u != "string" || !u.includes("@prettier-placeholder") ? u : u.split(/@prettier-placeholder-(\d+)-id/u).map((a, s) => s % 2 === 0 ? He(a) : (n++, t[a])));
1350
+ return t.length === n ? r : null;
1351
+ }
1352
+ function Ni({ node: e, parent: t, grandparent: n }) {
1353
+ 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?.type === "TaggedTemplateExpression" && t.tag.type === "Identifier" && t.tag.name === "css" || t?.type === "TaggedTemplateExpression" && t.tag.type === "MemberExpression" && t.tag.object.name === "css" && (t.tag.property.name === "global" || t.tag.property.name === "resolve");
1354
+ }
1355
+ function Rt(e) {
1356
+ return e.type === "Identifier" && e.name === "styled";
1357
+ }
1358
+ function Cr(e) {
1359
+ return /^[A-Z]/u.test(e.object.name) && e.property.name === "extend";
1360
+ }
1361
+ function ji({ parent: e }) {
1362
+ if (!e || e.type !== "TaggedTemplateExpression") return !1;
1363
+ let t = e.tag.type === "ParenthesizedExpression" ? e.tag.expression : e.tag;
1364
+ switch (t.type) {
1365
+ case "MemberExpression":
1366
+ return Rt(t.object) || Cr(t);
1367
+ case "CallExpression":
1368
+ return Rt(t.callee) || t.callee.type === "MemberExpression" && (t.callee.object.type === "MemberExpression" && (Rt(t.callee.object.object) || Cr(t.callee.object)) || t.callee.object.type === "CallExpression" && Rt(t.callee.object.callee));
1369
+ case "Identifier":
1370
+ return t.name === "css";
1371
+ default:
1372
+ return !1;
1373
+ }
1374
+ }
1375
+ function Li({ parent: e, grandparent: t }) {
1376
+ return t?.type === "JSXAttribute" && e.type === "JSXExpressionContainer" && t.name.type === "JSXIdentifier" && t.name.name === "css";
1377
+ }
1378
+ function Mi(e) {
1379
+ if (Ni(e) || ji(e) || Li(e) || vi(e)) return wi;
1380
+ }
1381
+ var Oi = Mi;
1382
+ async function Ji(e, t, n) {
1383
+ let { node: r } = n, u = r.quasis.length, a = nr(n, t), s = [];
1384
+ for (let o = 0; o < u; o++) {
1385
+ let i = r.quasis[o], l = o === 0, d = o === u - 1, D = i.value.cooked, c = D.split(`
1386
+ `), p = c.length, y = a[o], f = p > 2 && c[0].trim() === "" && c[1].trim() === "", g = p > 2 && c[p - 1].trim() === "" && c[p - 2].trim() === "", S = c.every((x) => /^\s*(?:#[^\n\r]*)?$/u.test(x));
1387
+ if (!d && /#[^\n\r]*$/u.test(c[p - 1])) return null;
1388
+ let b = null;
1389
+ S ? b = qi(c) : b = await e(D, { parser: "graphql" }), b ? (b = Iu(b, !1), !l && f && s.push(""), s.push(b), !d && g && s.push("")) : !l && !d && f && s.push(""), y && s.push(y);
1390
+ }
1391
+ return ["`", A([F, N(F, s)]), F, "`"];
1392
+ }
1393
+ function qi(e) {
1394
+ let t = [], n = !1, r = e.map((u) => u.trim());
1395
+ for (let [u, a] of r.entries()) a !== "" && (r[u - 1] === "" && n ? t.push([F, a]) : t.push(a), n = !0);
1396
+ return t.length === 0 ? null : N(F, t);
1397
+ }
1398
+ function _i({ node: e, parent: t }) {
1399
+ return ju({ 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");
1400
+ }
1401
+ function Xi(e) {
1402
+ if (_i(e)) return Ji;
1403
+ }
1404
+ var $i = Xi, fn = 0;
1405
+ async function Lu(e, t, n, r, u) {
1406
+ let { node: a } = r, s = fn;
1407
+ fn = fn + 1 >>> 0;
1408
+ let o = (S) => `PRETTIER_HTML_PLACEHOLDER_${S}_${s}_IN_JS`, i = a.quasis.map((S, b, x) => b === x.length - 1 ? S.value.cooked : S.value.cooked + o(b)).join(""), l = nr(r, n), d = new RegExp(o(String.raw`(\d+)`), "gu"), D = 0, c = await t(i, { parser: e, __onHtmlRoot(S) {
1409
+ D = S.children.length;
1410
+ } }), p = Et(c, (S) => {
1411
+ if (typeof S != "string") return S;
1412
+ let b = [], x = S.split(d);
1413
+ for (let j = 0; j < x.length; j++) {
1414
+ let v = x[j];
1415
+ if (j % 2 === 0) {
1416
+ v && (v = Nu(v), u.__embeddedInHtml && (v = H(!1, v, /<\/(?=script\b)/giu, String.raw`<\/`)), b.push(v));
1417
+ continue;
1418
+ }
1419
+ let B = Number(v);
1420
+ b.push(l[B]);
1421
+ }
1422
+ return b;
1423
+ }), y = /^\s/u.test(i) ? " " : "", f = /\s$/u.test(i) ? " " : "", g = u.htmlWhitespaceSensitivity === "ignore" ? F : y && f ? C : null;
1424
+ return g ? m(["`", A([g, m(p)]), g, "`"]) : jt({ hug: !1 }, m(["`", y, D > 1 ? A(m(p)) : m(p), f, "`"]));
1425
+ }
1426
+ function Ri(e) {
1427
+ return ju(e, "HTML") || e.match((t) => t.type === "TemplateLiteral", (t, n) => t.type === "TaggedTemplateExpression" && t.tag.type === "Identifier" && t.tag.name === "html" && n === "quasi");
1428
+ }
1429
+ var Wi = Lu.bind(void 0, "html"), Ui = Lu.bind(void 0, "angular");
1430
+ function Gi(e) {
1431
+ if (Ri(e)) return Wi;
1432
+ if (ki(e)) return Ui;
1433
+ }
1434
+ var Vi = Gi;
1435
+ async function Ki(e, t, n) {
1436
+ let { node: r } = n, u = H(!1, r.quasis[0].value.raw, /((?:\\\\)*)\\`/gu, (i, l) => "\\".repeat(l.length / 2) + "`"), a = Hi(u), s = a !== "";
1437
+ s && (u = H(!1, u, new RegExp(`^${a}`, "gmu"), ""));
1438
+ let o = Iu(await e(u, { parser: "markdown", __inJsTemplate: !0 }), !0);
1439
+ return ["`", s ? A([E, o]) : [du, Bo(o)], E, "`"];
1440
+ }
1441
+ function Hi(e) {
1442
+ let t = e.match(/^([^\S\n]*)\S/mu);
1443
+ return t === null ? "" : t[1];
1444
+ }
1445
+ function zi(e) {
1446
+ if (Qi(e)) return Ki;
1447
+ }
1448
+ function Qi({ node: e, parent: t }) {
1449
+ return t?.type === "TaggedTemplateExpression" && e.quasis.length === 1 && t.tag.type === "Identifier" && (t.tag.name === "md" || t.tag.name === "markdown");
1450
+ }
1451
+ var Yi = zi;
1452
+ function Zi(e) {
1453
+ let { node: t } = e;
1454
+ if (t.type !== "TemplateLiteral" || ep(t)) return;
1455
+ let n;
1456
+ for (let r of [Oi, $i, Vi, Yi]) if (n = r(e), !!n) return t.quasis.length === 1 && t.quasis[0].value.raw.trim() === "" ? "``" : async (...u) => {
1457
+ let a = await n(...u);
1458
+ return a && jt({ embed: !0, ...a.label }, a);
1459
+ };
1460
+ }
1461
+ function ep({ quasis: e }) {
1462
+ return e.some(({ value: { cooked: t } }) => t === null);
1463
+ }
1464
+ var tp = Zi, np = /\*\/$/, rp = /^\/\*\*?/, Mu = /^\s*(\/\*\*?(.|\r?\n)*?\*\/)/, up = /(^|\s+)\/\/([^\n\r]*)/g, Tr = /^(\r?\n)+/, ap = /(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g, Sr = /(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g, sp = /(\r?\n|^) *\* ?/g, Ou = [];
1465
+ function op(e) {
1466
+ let t = e.match(Mu);
1467
+ return t ? t[0].trimStart() : "";
1468
+ }
1469
+ function ip(e) {
1470
+ let t = e.match(Mu), n = t?.[0];
1471
+ return n == null ? e : e.slice(n.length);
1472
+ }
1473
+ function pp(e) {
1474
+ let t = `
1475
+ `;
1476
+ e = H(!1, e.replace(rp, "").replace(np, ""), sp, "$1");
1477
+ let n = "";
1478
+ for (; n !== e; ) n = e, e = H(!1, e, ap, `${t}$1 $2${t}`);
1479
+ e = e.replace(Tr, "").trimEnd();
1480
+ let r = /* @__PURE__ */ Object.create(null), u = H(!1, e, Sr, "").replace(Tr, "").trimEnd(), a;
1481
+ for (; a = Sr.exec(e); ) {
1482
+ let s = H(!1, a[2], up, "");
1483
+ if (typeof r[a[1]] == "string" || Array.isArray(r[a[1]])) {
1484
+ let o = r[a[1]];
1485
+ r[a[1]] = [...Ou, ...Array.isArray(o) ? o : [o], s];
1486
+ } else r[a[1]] = s;
1487
+ }
1488
+ return { comments: u, pragmas: r };
1489
+ }
1490
+ function lp({ comments: e = "", pragmas: t = {} }) {
1491
+ let n = `
1492
+ `, r = "/**", u = " *", a = " */", s = Object.keys(t), o = s.flatMap((l) => br(l, t[l])).map((l) => `${u} ${l}${n}`).join("");
1493
+ if (!e) {
1494
+ if (s.length === 0) return "";
1495
+ if (s.length === 1 && !Array.isArray(t[s[0]])) {
1496
+ let l = t[s[0]];
1497
+ return `${r} ${br(s[0], l)[0]}${a}`;
1498
+ }
1499
+ }
1500
+ let i = e.split(n).map((l) => `${u} ${l}`).join(n) + n;
1501
+ return r + n + (e ? i : "") + (e && s.length > 0 ? u + n : "") + o + a;
1502
+ }
1503
+ function br(e, t) {
1504
+ return [...Ou, ...Array.isArray(t) ? t : [t]].map((n) => `@${e} ${n}`.trim());
1505
+ }
1506
+ var cp = "format";
1507
+ function Dp(e) {
1508
+ if (!e.startsWith("#!")) return "";
1509
+ let t = e.indexOf(`
1510
+ `);
1511
+ return t === -1 ? e : e.slice(0, t);
1512
+ }
1513
+ var yp = Dp;
1514
+ function dp(e) {
1515
+ let t = yp(e);
1516
+ t && (e = e.slice(t.length + 1));
1517
+ let n = op(e), { pragmas: r, comments: u } = pp(n);
1518
+ return { shebang: t, text: e, pragmas: r, comments: u };
1519
+ }
1520
+ function mp(e) {
1521
+ let { shebang: t, text: n, pragmas: r, comments: u } = dp(e), a = ip(n), s = lp({ pragmas: { [cp]: "", ...r }, comments: u.trimStart() });
1522
+ return (t ? `${t}
1523
+ ` : "") + s + (a.startsWith(`
1524
+ `) ? `
1525
+ ` : `
1526
+
1527
+ `) + a;
1528
+ }
1529
+ function fp(e, t) {
1530
+ let { originalText: n, [/* @__PURE__ */ Symbol.for("comments")]: r, locStart: u, locEnd: a, [/* @__PURE__ */ Symbol.for("printedComments")]: s } = t, { node: o } = e, i = u(o), l = a(o);
1531
+ for (let d of r) u(d) >= i && a(d) <= l && s.add(d);
1532
+ return n.slice(i, l);
1533
+ }
1534
+ var Ep = fp;
1535
+ function In(e, t) {
1536
+ var n, r, u, a, s, o, i, l, d;
1537
+ if (e.isRoot) return !1;
1538
+ let { node: D, key: c, parent: p } = e;
1539
+ if (t.__isInHtmlInterpolation && !t.bracketSpacing && xp(D) && St(e)) return !0;
1540
+ if (Fp(D)) return !1;
1541
+ if (D.type === "Identifier") {
1542
+ if ((n = D.extra) != null && n.parenthesized && /^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/u.test(D.name) || c === "left" && (D.name === "async" && !p.await || D.name === "let") && p.type === "ForOfStatement") return !0;
1543
+ if (D.name === "let") {
1544
+ let y = (r = e.findAncestor((f) => f.type === "ForOfStatement")) == null ? void 0 : r.left;
1545
+ if (y && te(y, (f) => f === D)) return !0;
1546
+ }
1547
+ if (c === "object" && D.name === "let" && p.type === "MemberExpression" && p.computed && !p.optional) {
1548
+ let y = e.findAncestor((g) => g.type === "ExpressionStatement" || g.type === "ForStatement" || g.type === "ForInStatement"), f = y ? y.type === "ExpressionStatement" ? y.expression : y.type === "ForStatement" ? y.init : y.left : void 0;
1549
+ if (f && te(f, (g) => g === D)) return !0;
1550
+ }
1551
+ if (c === "expression") switch (D.name) {
1552
+ case "await":
1553
+ case "interface":
1554
+ case "module":
1555
+ case "using":
1556
+ case "yield":
1557
+ case "let":
1558
+ case "component":
1559
+ case "hook":
1560
+ case "type": {
1561
+ let y = e.findAncestor((f) => !Ce(f));
1562
+ if (y !== p && y.type === "ExpressionStatement") return !0;
1563
+ }
1564
+ }
1565
+ return !1;
1566
+ }
1567
+ if (D.type === "ObjectExpression" || D.type === "FunctionExpression" || D.type === "ClassExpression" || D.type === "DoExpression") {
1568
+ let y = (u = e.findAncestor((f) => f.type === "ExpressionStatement")) == null ? void 0 : u.expression;
1569
+ if (y && te(y, (f) => f === D)) return !0;
1570
+ }
1571
+ if (D.type === "ObjectExpression") {
1572
+ let y = (a = e.findAncestor((f) => f.type === "ArrowFunctionExpression")) == null ? void 0 : a.body;
1573
+ if (y && y.type !== "SequenceExpression" && y.type !== "AssignmentExpression" && te(y, (f) => f === D)) return !0;
1574
+ }
1575
+ switch (p.type) {
1576
+ case "ParenthesizedExpression":
1577
+ return !1;
1578
+ case "ClassDeclaration":
1579
+ case "ClassExpression":
1580
+ if (c === "superClass" && (D.type === "ArrowFunctionExpression" || D.type === "AssignmentExpression" || D.type === "AwaitExpression" || D.type === "BinaryExpression" || D.type === "ConditionalExpression" || D.type === "LogicalExpression" || D.type === "NewExpression" || D.type === "ObjectExpression" || D.type === "SequenceExpression" || D.type === "TaggedTemplateExpression" || D.type === "UnaryExpression" || D.type === "UpdateExpression" || D.type === "YieldExpression" || D.type === "TSNonNullExpression" || D.type === "ClassExpression" && J(D.decorators))) return !0;
1581
+ break;
1582
+ case "ExportDefaultDeclaration":
1583
+ return Ju(e, t) || D.type === "SequenceExpression";
1584
+ case "Decorator":
1585
+ if (c === "expression" && !Cp(D)) return !0;
1586
+ break;
1587
+ case "TypeAnnotation":
1588
+ if (e.match(void 0, void 0, (y, f) => f === "returnType" && y.type === "ArrowFunctionExpression") && gp(D)) return !0;
1589
+ break;
1590
+ case "BinaryExpression":
1591
+ if (c === "left" && (p.operator === "in" || p.operator === "instanceof") && D.type === "UnaryExpression") return !0;
1592
+ break;
1593
+ case "VariableDeclarator":
1594
+ if (c === "init" && e.match(void 0, void 0, (y, f) => f === "declarations" && y.type === "VariableDeclaration", (y, f) => f === "left" && y.type === "ForInStatement")) return !0;
1595
+ break;
1596
+ }
1597
+ switch (D.type) {
1598
+ case "UpdateExpression":
1599
+ if (p.type === "UnaryExpression") return D.prefix && (D.operator === "++" && p.operator === "+" || D.operator === "--" && p.operator === "-");
1600
+ case "UnaryExpression":
1601
+ switch (p.type) {
1602
+ case "UnaryExpression":
1603
+ return D.operator === p.operator && (D.operator === "+" || D.operator === "-");
1604
+ case "BindExpression":
1605
+ return !0;
1606
+ case "MemberExpression":
1607
+ case "OptionalMemberExpression":
1608
+ return c === "object";
1609
+ case "TaggedTemplateExpression":
1610
+ return !0;
1611
+ case "NewExpression":
1612
+ case "CallExpression":
1613
+ case "OptionalCallExpression":
1614
+ return c === "callee";
1615
+ case "BinaryExpression":
1616
+ return c === "left" && p.operator === "**";
1617
+ case "TSNonNullExpression":
1618
+ return !0;
1619
+ default:
1620
+ return !1;
1621
+ }
1622
+ case "BinaryExpression":
1623
+ if (p.type === "UpdateExpression" || D.operator === "in" && Ap(e)) return !0;
1624
+ if (D.operator === "|>" && (s = D.extra) != null && s.parenthesized) {
1625
+ let y = e.grandparent;
1626
+ if (y.type === "BinaryExpression" && y.operator === "|>") return !0;
1627
+ }
1628
+ case "TSTypeAssertion":
1629
+ case "TSAsExpression":
1630
+ case "TSSatisfiesExpression":
1631
+ case "AsExpression":
1632
+ case "AsConstExpression":
1633
+ case "SatisfiesExpression":
1634
+ case "LogicalExpression":
1635
+ switch (p.type) {
1636
+ case "TSAsExpression":
1637
+ case "TSSatisfiesExpression":
1638
+ case "AsExpression":
1639
+ case "AsConstExpression":
1640
+ case "SatisfiesExpression":
1641
+ return !Ce(D);
1642
+ case "ConditionalExpression":
1643
+ return Ce(D) || Vs(D);
1644
+ case "CallExpression":
1645
+ case "NewExpression":
1646
+ case "OptionalCallExpression":
1647
+ return c === "callee";
1648
+ case "ClassExpression":
1649
+ case "ClassDeclaration":
1650
+ return c === "superClass";
1651
+ case "TSTypeAssertion":
1652
+ case "TaggedTemplateExpression":
1653
+ case "UnaryExpression":
1654
+ case "JSXSpreadAttribute":
1655
+ case "SpreadElement":
1656
+ case "BindExpression":
1657
+ case "AwaitExpression":
1658
+ case "TSNonNullExpression":
1659
+ case "UpdateExpression":
1660
+ return !0;
1661
+ case "MemberExpression":
1662
+ case "OptionalMemberExpression":
1663
+ return c === "object";
1664
+ case "AssignmentExpression":
1665
+ case "AssignmentPattern":
1666
+ return c === "left" && (D.type === "TSTypeAssertion" || Ce(D));
1667
+ case "LogicalExpression":
1668
+ if (D.type === "LogicalExpression") return p.operator !== D.operator;
1669
+ case "BinaryExpression": {
1670
+ let { operator: y, type: f } = D;
1671
+ if (!y && f !== "TSTypeAssertion") return !0;
1672
+ let g = Vt(y), S = p.operator, b = Vt(S);
1673
+ return b > g || c === "right" && b === g || b === g && !Vn(S, y) ? !0 : b < g && y === "%" ? S === "+" || S === "-" : !!oo(S);
1674
+ }
1675
+ default:
1676
+ return !1;
1677
+ }
1678
+ case "SequenceExpression":
1679
+ return p.type !== "ForStatement";
1680
+ case "YieldExpression":
1681
+ if (p.type === "AwaitExpression" || p.type === "TSTypeAssertion") return !0;
1682
+ case "AwaitExpression":
1683
+ switch (p.type) {
1684
+ case "TaggedTemplateExpression":
1685
+ case "UnaryExpression":
1686
+ case "LogicalExpression":
1687
+ case "SpreadElement":
1688
+ case "TSAsExpression":
1689
+ case "TSSatisfiesExpression":
1690
+ case "TSNonNullExpression":
1691
+ case "AsExpression":
1692
+ case "AsConstExpression":
1693
+ case "SatisfiesExpression":
1694
+ case "BindExpression":
1695
+ return !0;
1696
+ case "MemberExpression":
1697
+ case "OptionalMemberExpression":
1698
+ return c === "object";
1699
+ case "NewExpression":
1700
+ case "CallExpression":
1701
+ case "OptionalCallExpression":
1702
+ return c === "callee";
1703
+ case "ConditionalExpression":
1704
+ return c === "test";
1705
+ case "BinaryExpression":
1706
+ return !(!D.argument && p.operator === "|>");
1707
+ default:
1708
+ return !1;
1709
+ }
1710
+ case "TSFunctionType":
1711
+ if (e.match((y) => y.type === "TSFunctionType", (y, f) => f === "typeAnnotation" && y.type === "TSTypeAnnotation", (y, f) => f === "returnType" && y.type === "ArrowFunctionExpression")) return !0;
1712
+ case "TSConditionalType":
1713
+ case "TSConstructorType":
1714
+ case "ConditionalTypeAnnotation":
1715
+ if (c === "extendsType" && Re(D) && p.type === D.type || c === "checkType" && Re(p)) return !0;
1716
+ if (c === "extendsType" && p.type === "TSConditionalType") {
1717
+ let { typeAnnotation: y } = D.returnType || D.typeAnnotation;
1718
+ if (y.type === "TSTypePredicate" && y.typeAnnotation && (y = y.typeAnnotation.typeAnnotation), y.type === "TSInferType" && y.typeParameter.constraint) return !0;
1719
+ }
1720
+ case "TSUnionType":
1721
+ case "TSIntersectionType":
1722
+ if (($e(p) || Kn(p)) && p.types.length > 1 && (!D.types || D.types.length > 1)) return !0;
1723
+ case "TSInferType":
1724
+ if (D.type === "TSInferType") {
1725
+ if (p.type === "TSRestType") return !1;
1726
+ if (c === "types" && (p.type === "TSUnionType" || p.type === "TSIntersectionType") && D.typeParameter.type === "TSTypeParameter" && D.typeParameter.constraint) return !0;
1727
+ }
1728
+ case "TSTypeOperator":
1729
+ return p.type === "TSArrayType" || p.type === "TSOptionalType" || p.type === "TSRestType" || c === "objectType" && p.type === "TSIndexedAccessType" || p.type === "TSTypeOperator" || p.type === "TSTypeAnnotation" && e.grandparent.type.startsWith("TSJSDoc");
1730
+ case "TSTypeQuery":
1731
+ return c === "objectType" && p.type === "TSIndexedAccessType" || c === "elementType" && p.type === "TSArrayType";
1732
+ case "TypeOperator":
1733
+ return p.type === "ArrayTypeAnnotation" || p.type === "NullableTypeAnnotation" || c === "objectType" && (p.type === "IndexedAccessType" || p.type === "OptionalIndexedAccessType") || p.type === "TypeOperator";
1734
+ case "TypeofTypeAnnotation":
1735
+ return c === "objectType" && (p.type === "IndexedAccessType" || p.type === "OptionalIndexedAccessType") || c === "elementType" && p.type === "ArrayTypeAnnotation";
1736
+ case "ArrayTypeAnnotation":
1737
+ return p.type === "NullableTypeAnnotation";
1738
+ case "IntersectionTypeAnnotation":
1739
+ case "UnionTypeAnnotation":
1740
+ return p.type === "TypeOperator" || p.type === "ArrayTypeAnnotation" || p.type === "NullableTypeAnnotation" || p.type === "IntersectionTypeAnnotation" || p.type === "UnionTypeAnnotation" || c === "objectType" && (p.type === "IndexedAccessType" || p.type === "OptionalIndexedAccessType");
1741
+ case "InferTypeAnnotation":
1742
+ case "NullableTypeAnnotation":
1743
+ return p.type === "ArrayTypeAnnotation" || c === "objectType" && (p.type === "IndexedAccessType" || p.type === "OptionalIndexedAccessType");
1744
+ case "ComponentTypeAnnotation":
1745
+ case "FunctionTypeAnnotation": {
1746
+ if (D.type === "ComponentTypeAnnotation" && (D.rendersType === null || D.rendersType === void 0)) return !1;
1747
+ if (e.match(void 0, (f, g) => g === "typeAnnotation" && f.type === "TypeAnnotation", (f, g) => g === "returnType" && f.type === "ArrowFunctionExpression") || e.match(void 0, (f, g) => g === "typeAnnotation" && f.type === "TypePredicate", (f, g) => g === "typeAnnotation" && f.type === "TypeAnnotation", (f, g) => g === "returnType" && f.type === "ArrowFunctionExpression")) return !0;
1748
+ let y = p.type === "NullableTypeAnnotation" ? e.grandparent : p;
1749
+ return y.type === "UnionTypeAnnotation" || y.type === "IntersectionTypeAnnotation" || y.type === "ArrayTypeAnnotation" || c === "objectType" && (y.type === "IndexedAccessType" || y.type === "OptionalIndexedAccessType") || c === "checkType" && p.type === "ConditionalTypeAnnotation" || c === "extendsType" && p.type === "ConditionalTypeAnnotation" && ((o = D.returnType) == null ? void 0 : o.type) === "InferTypeAnnotation" && ((i = D.returnType) == null ? void 0 : i.typeParameter.bound) || y.type === "NullableTypeAnnotation" || p.type === "FunctionTypeParam" && p.name === null && Z(D).some((f) => {
1750
+ var g;
1751
+ return ((g = f.typeAnnotation) == null ? void 0 : g.type) === "NullableTypeAnnotation";
1752
+ });
1753
+ }
1754
+ case "OptionalIndexedAccessType":
1755
+ return c === "objectType" && p.type === "IndexedAccessType";
1756
+ case "StringLiteral":
1757
+ case "NumericLiteral":
1758
+ case "Literal":
1759
+ if (typeof D.value == "string" && p.type === "ExpressionStatement" && typeof p.directive != "string") {
1760
+ let y = e.grandparent;
1761
+ return y.type === "Program" || y.type === "BlockStatement";
1762
+ }
1763
+ return c === "object" && R(p) && be(D);
1764
+ case "AssignmentExpression":
1765
+ return !((c === "init" || c === "update") && p.type === "ForStatement" || c === "expression" && D.left.type !== "ObjectPattern" && p.type === "ExpressionStatement" || c === "key" && p.type === "TSPropertySignature" || p.type === "AssignmentExpression" || c === "expressions" && p.type === "SequenceExpression" && e.match(void 0, void 0, (y, f) => (f === "init" || f === "update") && y.type === "ForStatement") || c === "value" && p.type === "Property" && e.match(void 0, void 0, (y, f) => f === "properties" && y.type === "ObjectPattern") || p.type === "NGChainedExpression" || c === "node" && p.type === "JsExpressionRoot");
1766
+ case "ConditionalExpression":
1767
+ switch (p.type) {
1768
+ case "TaggedTemplateExpression":
1769
+ case "UnaryExpression":
1770
+ case "SpreadElement":
1771
+ case "BinaryExpression":
1772
+ case "LogicalExpression":
1773
+ case "NGPipeExpression":
1774
+ case "ExportDefaultDeclaration":
1775
+ case "AwaitExpression":
1776
+ case "JSXSpreadAttribute":
1777
+ case "TSTypeAssertion":
1778
+ case "TypeCastExpression":
1779
+ case "TSAsExpression":
1780
+ case "TSSatisfiesExpression":
1781
+ case "AsExpression":
1782
+ case "AsConstExpression":
1783
+ case "SatisfiesExpression":
1784
+ case "TSNonNullExpression":
1785
+ return !0;
1786
+ case "NewExpression":
1787
+ case "CallExpression":
1788
+ case "OptionalCallExpression":
1789
+ return c === "callee";
1790
+ case "ConditionalExpression":
1791
+ return t.experimentalTernaries ? !1 : c === "test";
1792
+ case "MemberExpression":
1793
+ case "OptionalMemberExpression":
1794
+ return c === "object";
1795
+ default:
1796
+ return !1;
1797
+ }
1798
+ case "FunctionExpression":
1799
+ switch (p.type) {
1800
+ case "NewExpression":
1801
+ case "CallExpression":
1802
+ case "OptionalCallExpression":
1803
+ return c === "callee";
1804
+ case "TaggedTemplateExpression":
1805
+ return !0;
1806
+ default:
1807
+ return !1;
1808
+ }
1809
+ case "ArrowFunctionExpression":
1810
+ switch (p.type) {
1811
+ case "BinaryExpression":
1812
+ return p.operator !== "|>" || ((l = D.extra) == null ? void 0 : l.parenthesized);
1813
+ case "NewExpression":
1814
+ case "CallExpression":
1815
+ case "OptionalCallExpression":
1816
+ return c === "callee";
1817
+ case "MemberExpression":
1818
+ case "OptionalMemberExpression":
1819
+ return c === "object";
1820
+ case "TSAsExpression":
1821
+ case "TSSatisfiesExpression":
1822
+ case "AsExpression":
1823
+ case "AsConstExpression":
1824
+ case "SatisfiesExpression":
1825
+ case "TSNonNullExpression":
1826
+ case "BindExpression":
1827
+ case "TaggedTemplateExpression":
1828
+ case "UnaryExpression":
1829
+ case "LogicalExpression":
1830
+ case "AwaitExpression":
1831
+ case "TSTypeAssertion":
1832
+ return !0;
1833
+ case "ConditionalExpression":
1834
+ return c === "test";
1835
+ default:
1836
+ return !1;
1837
+ }
1838
+ case "ClassExpression":
1839
+ return p.type === "NewExpression" ? c === "callee" : !1;
1840
+ case "OptionalMemberExpression":
1841
+ case "OptionalCallExpression":
1842
+ case "CallExpression":
1843
+ case "MemberExpression":
1844
+ if (hp(e)) return !0;
1845
+ case "TaggedTemplateExpression":
1846
+ case "TSNonNullExpression":
1847
+ if (c === "callee" && (p.type === "BindExpression" || p.type === "NewExpression")) {
1848
+ let y = D;
1849
+ for (; y; ) switch (y.type) {
1850
+ case "CallExpression":
1851
+ case "OptionalCallExpression":
1852
+ return !0;
1853
+ case "MemberExpression":
1854
+ case "OptionalMemberExpression":
1855
+ case "BindExpression":
1856
+ y = y.object;
1857
+ break;
1858
+ case "TaggedTemplateExpression":
1859
+ y = y.tag;
1860
+ break;
1861
+ case "TSNonNullExpression":
1862
+ y = y.expression;
1863
+ break;
1864
+ default:
1865
+ return !1;
1866
+ }
1867
+ }
1868
+ return !1;
1869
+ case "BindExpression":
1870
+ return c === "callee" && (p.type === "BindExpression" || p.type === "NewExpression") || c === "object" && R(p);
1871
+ case "NGPipeExpression":
1872
+ return !(p.type === "NGRoot" || p.type === "NGMicrosyntaxExpression" || p.type === "ObjectProperty" && !((d = D.extra) != null && d.parenthesized) || Q(p) || c === "arguments" && L(p) || c === "right" && p.type === "NGPipeExpression" || c === "property" && p.type === "MemberExpression" || p.type === "AssignmentExpression");
1873
+ case "JSXFragment":
1874
+ case "JSXElement":
1875
+ return c === "callee" || c === "left" && p.type === "BinaryExpression" && p.operator === "<" || !Q(p) && p.type !== "ArrowFunctionExpression" && p.type !== "AssignmentExpression" && p.type !== "AssignmentPattern" && p.type !== "BinaryExpression" && p.type !== "NewExpression" && p.type !== "ConditionalExpression" && p.type !== "ExpressionStatement" && p.type !== "JsExpressionRoot" && p.type !== "JSXAttribute" && p.type !== "JSXElement" && p.type !== "JSXExpressionContainer" && p.type !== "JSXFragment" && p.type !== "LogicalExpression" && !L(p) && !je(p) && p.type !== "ReturnStatement" && p.type !== "ThrowStatement" && p.type !== "TypeCastExpression" && p.type !== "VariableDeclarator" && p.type !== "YieldExpression";
1876
+ case "TSInstantiationExpression":
1877
+ return c === "object" && R(p);
1878
+ }
1879
+ return !1;
1880
+ }
1881
+ var Fp = _(["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"]);
1882
+ function Ap(e) {
1883
+ let t = 0, { node: n } = e;
1884
+ for (; n; ) {
1885
+ let r = e.getParentNode(t++);
1886
+ if (r?.type === "ForStatement" && r.init === n) return !0;
1887
+ n = r;
1888
+ }
1889
+ return !1;
1890
+ }
1891
+ function gp(e) {
1892
+ return Cn(e, (t) => t.type === "ObjectTypeAnnotation" && Cn(t, (n) => n.type === "FunctionTypeAnnotation"));
1893
+ }
1894
+ function xp(e) {
1895
+ return Ae(e);
1896
+ }
1897
+ function St(e) {
1898
+ let { parent: t, key: n } = e;
1899
+ switch (t.type) {
1900
+ case "NGPipeExpression":
1901
+ if (n === "arguments" && e.isLast) return e.callParent(St);
1902
+ break;
1903
+ case "ObjectProperty":
1904
+ if (n === "value") return e.callParent(() => e.key === "properties" && e.isLast);
1905
+ break;
1906
+ case "BinaryExpression":
1907
+ case "LogicalExpression":
1908
+ if (n === "right") return e.callParent(St);
1909
+ break;
1910
+ case "ConditionalExpression":
1911
+ if (n === "alternate") return e.callParent(St);
1912
+ break;
1913
+ case "UnaryExpression":
1914
+ if (t.prefix) return e.callParent(St);
1915
+ break;
1916
+ }
1917
+ return !1;
1918
+ }
1919
+ function Ju(e, t) {
1920
+ let { node: n, parent: r } = e;
1921
+ return n.type === "FunctionExpression" || n.type === "ClassExpression" ? r.type === "ExportDefaultDeclaration" || !In(e, t) : !Rn(n) || r.type !== "ExportDefaultDeclaration" && In(e, t) ? !1 : e.call(() => Ju(e, t), ...Yr(n));
1922
+ }
1923
+ function hp(e) {
1924
+ return !!(e.match(void 0, (t, n) => n === "expression" && t.type === "ChainExpression", (t, n) => n === "tag" && t.type === "TaggedTemplateExpression") || e.match((t) => t.type === "OptionalCallExpression" || t.type === "OptionalMemberExpression", (t, n) => n === "tag" && t.type === "TaggedTemplateExpression") || e.match((t) => t.type === "OptionalCallExpression" || t.type === "OptionalMemberExpression", (t, n) => n === "expression" && t.type === "TSNonNullExpression", (t, n) => n === "tag" && t.type === "TaggedTemplateExpression") || e.match(void 0, (t, n) => n === "expression" && t.type === "ChainExpression", (t, n) => n === "expression" && t.type === "TSNonNullExpression", (t, n) => n === "tag" && t.type === "TaggedTemplateExpression") || e.match(void 0, (t, n) => n === "expression" && t.type === "TSNonNullExpression", (t, n) => n === "expression" && t.type === "ChainExpression", (t, n) => n === "tag" && t.type === "TaggedTemplateExpression") || e.match((t) => t.type === "OptionalMemberExpression" || t.type === "OptionalCallExpression", (t, n) => n === "object" && t.type === "MemberExpression" || n === "callee" && (t.type === "CallExpression" || t.type === "NewExpression")) || e.match((t) => t.type === "OptionalMemberExpression" || t.type === "OptionalCallExpression", (t, n) => n === "expression" && t.type === "TSNonNullExpression", (t, n) => n === "object" && t.type === "MemberExpression" || n === "callee" && t.type === "CallExpression") || e.match((t) => t.type === "CallExpression" || t.type === "MemberExpression", (t, n) => n === "expression" && t.type === "ChainExpression") && (e.match(void 0, void 0, (t, n) => n === "callee" && (t.type === "CallExpression" && !t.optional || t.type === "NewExpression") || n === "object" && t.type === "MemberExpression" && !t.optional) || e.match(void 0, void 0, (t, n) => n === "expression" && t.type === "TSNonNullExpression", (t, n) => n === "object" && t.type === "MemberExpression" || n === "callee" && t.type === "CallExpression")) || e.match((t) => t.type === "CallExpression" || t.type === "MemberExpression", (t, n) => n === "expression" && t.type === "TSNonNullExpression", (t, n) => n === "expression" && t.type === "ChainExpression", (t, n) => n === "object" && t.type === "MemberExpression" || n === "callee" && t.type === "CallExpression"));
1925
+ }
1926
+ function Nn(e) {
1927
+ return e.type === "Identifier" ? !0 : R(e) ? !e.computed && !e.optional && e.property.type === "Identifier" && Nn(e.object) : !1;
1928
+ }
1929
+ function Cp(e) {
1930
+ return e.type === "ChainExpression" && (e = e.expression), Nn(e) || L(e) && !e.optional && Nn(e.callee);
1931
+ }
1932
+ var ut = In;
1933
+ function Tp(e, t) {
1934
+ let n = t - 1;
1935
+ n = ct(e, n, { backwards: !0 }), n = Dt(e, n, { backwards: !0 }), n = ct(e, n, { backwards: !0 });
1936
+ let r = Dt(e, n, { backwards: !0 });
1937
+ return n !== r;
1938
+ }
1939
+ var Sp = Tp, bp = () => !0;
1940
+ function rr(e, t) {
1941
+ let n = e.node;
1942
+ return n.printed = !0, t.printer.printComment(e, t);
1943
+ }
1944
+ function Bp(e, t) {
1945
+ var n;
1946
+ let r = e.node, u = [rr(e, t)], { printer: a, originalText: s, locStart: o, locEnd: i } = t;
1947
+ if ((n = a.isBlockComment) != null && n.call(a, r)) {
1948
+ let d = pe(s, i(r)) ? pe(s, o(r), { backwards: !0 }) ? F : C : " ";
1949
+ u.push(d);
1950
+ } else u.push(F);
1951
+ let l = Dt(s, ct(s, i(r)));
1952
+ return l !== !1 && pe(s, l) && u.push(F), u;
1953
+ }
1954
+ function vp(e, t, n) {
1955
+ var r;
1956
+ let u = e.node, a = rr(e, t), { printer: s, originalText: o, locStart: i } = t, l = (r = s.isBlockComment) == null ? void 0 : r.call(s, u);
1957
+ if (n != null && n.hasLineSuffix && !(n != null && n.isBlock) || pe(o, i(u), { backwards: !0 })) {
1958
+ let d = Sp(o, i(u));
1959
+ return { doc: hr([F, d ? F : "", a]), isBlock: l, hasLineSuffix: !0 };
1960
+ }
1961
+ return !l || n != null && n.hasLineSuffix ? { doc: [hr([" ", a]), ve], isBlock: l, hasLineSuffix: !0 } : { doc: [" ", a], isBlock: l, hasLineSuffix: !1 };
1962
+ }
1963
+ function $(e, t, n = {}) {
1964
+ let { node: r } = e;
1965
+ if (!J(r?.comments)) return "";
1966
+ let { indent: u = !1, marker: a, filter: s = bp } = n, o = [];
1967
+ if (e.each(({ node: l }) => {
1968
+ l.leading || l.trailing || l.marker !== a || !s(l) || o.push(rr(e, t));
1969
+ }, "comments"), o.length === 0) return "";
1970
+ let i = N(F, o);
1971
+ return u ? A([F, i]) : i;
1972
+ }
1973
+ function qu(e, t) {
1974
+ let n = e.node;
1975
+ if (!n) return {};
1976
+ let r = t[/* @__PURE__ */ Symbol.for("printedComments")];
1977
+ if ((n.comments || []).filter((o) => !r.has(o)).length === 0) return { leading: "", trailing: "" };
1978
+ let u = [], a = [], s;
1979
+ return e.each(() => {
1980
+ let o = e.node;
1981
+ if (r != null && r.has(o)) return;
1982
+ let { leading: i, trailing: l } = o;
1983
+ i ? u.push(Bp(e, t)) : l && (s = vp(e, t, s), a.push(s.doc));
1984
+ }, "comments"), { leading: u, trailing: a };
1985
+ }
1986
+ function Fe(e, t, n) {
1987
+ let { leading: r, trailing: u } = qu(e, n);
1988
+ return !r && !u ? t : bn(t, (a) => [r, a, u]);
1989
+ }
1990
+ var kp = class extends Error {
1991
+ name = "UnexpectedNodeError";
1992
+ constructor(e, t, n = "type") {
1993
+ super(`Unexpected ${t} node ${n}: ${JSON.stringify(e[n])}.`), this.node = e;
1994
+ }
1995
+ }, At = kp;
1996
+ function Pp(e) {
1997
+ if (typeof e != "string") throw new TypeError("Expected a string");
1998
+ return e.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d");
1999
+ }
2000
+ var fe, wp = class {
2001
+ constructor(e) {
2002
+ ts(this, fe), ns(this, fe, new Set(e));
2003
+ }
2004
+ getLeadingWhitespaceCount(e) {
2005
+ let t = Je(this, fe), n = 0;
2006
+ for (let r = 0; r < e.length && t.has(e.charAt(r)); r++) n++;
2007
+ return n;
2008
+ }
2009
+ getTrailingWhitespaceCount(e) {
2010
+ let t = Je(this, fe), n = 0;
2011
+ for (let r = e.length - 1; r >= 0 && t.has(e.charAt(r)); r--) n++;
2012
+ return n;
2013
+ }
2014
+ getLeadingWhitespace(e) {
2015
+ let t = this.getLeadingWhitespaceCount(e);
2016
+ return e.slice(0, t);
2017
+ }
2018
+ getTrailingWhitespace(e) {
2019
+ let t = this.getTrailingWhitespaceCount(e);
2020
+ return e.slice(e.length - t);
2021
+ }
2022
+ hasLeadingWhitespace(e) {
2023
+ return Je(this, fe).has(e.charAt(0));
2024
+ }
2025
+ hasTrailingWhitespace(e) {
2026
+ return Je(this, fe).has(X(!1, e, -1));
2027
+ }
2028
+ trimStart(e) {
2029
+ let t = this.getLeadingWhitespaceCount(e);
2030
+ return e.slice(t);
2031
+ }
2032
+ trimEnd(e) {
2033
+ let t = this.getTrailingWhitespaceCount(e);
2034
+ return e.slice(0, e.length - t);
2035
+ }
2036
+ trim(e) {
2037
+ return this.trimEnd(this.trimStart(e));
2038
+ }
2039
+ split(e, t = !1) {
2040
+ let n = `[${Pp([...Je(this, fe)].join(""))}]+`, r = new RegExp(t ? `(${n})` : n, "u");
2041
+ return e.split(r);
2042
+ }
2043
+ hasWhitespaceCharacter(e) {
2044
+ let t = Je(this, fe);
2045
+ return Array.prototype.some.call(e, (n) => t.has(n));
2046
+ }
2047
+ hasNonWhitespaceCharacter(e) {
2048
+ let t = Je(this, fe);
2049
+ return Array.prototype.some.call(e, (n) => !t.has(n));
2050
+ }
2051
+ isWhitespaceOnly(e) {
2052
+ let t = Je(this, fe);
2053
+ return Array.prototype.every.call(e, (n) => t.has(n));
2054
+ }
2055
+ };
2056
+ fe = /* @__PURE__ */ new WeakMap();
2057
+ var Ip = wp, Wt = new Ip(`
2058
+ \r `), En = (e) => e === "" || e === C || e === F || e === E;
2059
+ function Np(e, t, n) {
2060
+ var r, u, a, s, o;
2061
+ let { node: i } = e;
2062
+ if (i.type === "JSXElement" && Hp(i)) return [n("openingElement"), n("closingElement")];
2063
+ let l = i.type === "JSXElement" ? n("openingElement") : n("openingFragment"), d = i.type === "JSXElement" ? n("closingElement") : n("closingFragment");
2064
+ if (i.children.length === 1 && i.children[0].type === "JSXExpressionContainer" && (i.children[0].expression.type === "TemplateLiteral" || i.children[0].expression.type === "TaggedTemplateExpression")) return [l, ...e.map(n, "children"), d];
2065
+ i.children = i.children.map((k) => zp(k) ? { type: "JSXText", value: " ", raw: " " } : k);
2066
+ let D = i.children.some(K), c = i.children.filter((k) => k.type === "JSXExpressionContainer").length > 1, p = i.type === "JSXElement" && i.openingElement.attributes.length > 1, y = ne(l) || D || p || c, f = e.parent.rootMarker === "mdx", g = t.singleQuote ? "{' '}" : '{" "}', S = f ? C : w([g, E], " "), b = ((u = (r = i.openingElement) == null ? void 0 : r.name) == null ? void 0 : u.name) === "fbt", x = jp(e, t, n, S, b), j = i.children.some((k) => wt(k));
2067
+ for (let k = x.length - 2; k >= 0; k--) {
2068
+ let O = x[k] === "" && x[k + 1] === "", G = x[k] === F && x[k + 1] === "" && x[k + 2] === F, U = (x[k] === E || x[k] === F) && x[k + 1] === "" && x[k + 2] === S, Oe = x[k] === S && x[k + 1] === "" && (x[k + 2] === E || x[k + 2] === F), P = x[k] === S && x[k + 1] === "" && x[k + 2] === S, V = x[k] === E && x[k + 1] === "" && x[k + 2] === F || x[k] === F && x[k + 1] === "" && x[k + 2] === E;
2069
+ G && j || O || U || P || V ? x.splice(k, 2) : Oe && x.splice(k + 1, 2);
2070
+ }
2071
+ for (; x.length > 0 && En(X(!1, x, -1)); ) x.pop();
2072
+ for (; x.length > 1 && En(x[0]) && En(x[1]); ) x.shift(), x.shift();
2073
+ let v = [""];
2074
+ for (let [k, O] of x.entries()) {
2075
+ if (O === S) {
2076
+ if (k === 1 && To(x[k - 1])) {
2077
+ if (x.length === 2) {
2078
+ v.push([v.pop(), g]);
2079
+ continue;
2080
+ }
2081
+ v.push([g, F], "");
2082
+ continue;
2083
+ } else if (k === x.length - 1) {
2084
+ v.push([v.pop(), g]);
2085
+ continue;
2086
+ } else if (x[k - 1] === "" && x[k - 2] === F) {
2087
+ v.push([v.pop(), g]);
2088
+ continue;
2089
+ }
2090
+ }
2091
+ k % 2 === 0 ? v.push([v.pop(), O]) : v.push(O, ""), ne(O) && (y = !0);
2092
+ }
2093
+ let B = j ? Du(v) : m(v, { shouldBreak: !0 });
2094
+ if (((a = t.cursorNode) == null ? void 0 : a.type) === "JSXText" && i.children.includes(t.cursorNode) ? B = [Xt, B, Xt] : ((s = t.nodeBeforeCursor) == null ? void 0 : s.type) === "JSXText" && i.children.includes(t.nodeBeforeCursor) ? B = [Xt, B] : ((o = t.nodeAfterCursor) == null ? void 0 : o.type) === "JSXText" && i.children.includes(t.nodeAfterCursor) && (B = [B, Xt]), f) return B;
2095
+ let M = m([l, A([F, B]), F, d]);
2096
+ return y ? M : Ve([m([l, ...x, d]), M]);
2097
+ }
2098
+ function jp(e, t, n, r, u) {
2099
+ let a = "", s = [a];
2100
+ function o(l) {
2101
+ a = l, s.push([s.pop(), l]);
2102
+ }
2103
+ function i(l) {
2104
+ l !== "" && (a = l, s.push(l, ""));
2105
+ }
2106
+ return e.each(({ node: l, next: d }) => {
2107
+ if (l.type === "JSXText") {
2108
+ let D = se(l);
2109
+ if (wt(l)) {
2110
+ let c = Wt.split(D, !0);
2111
+ c[0] === "" && (c.shift(), /\n/u.test(c[0]) ? i(vr(u, c[1], l, d)) : i(r), c.shift());
2112
+ let p;
2113
+ if (X(!1, c, -1) === "" && (c.pop(), p = c.pop()), c.length === 0) return;
2114
+ for (let [y, f] of c.entries()) y % 2 === 1 ? i(C) : o(f);
2115
+ p !== void 0 ? /\n/u.test(p) ? i(vr(u, a, l, d)) : i(r) : i(Br(u, a, l, d));
2116
+ } else /\n/u.test(D) ? D.match(/\n/gu).length > 1 && i(F) : i(r);
2117
+ } else {
2118
+ let D = n();
2119
+ if (o(D), d && wt(d)) {
2120
+ let c = Wt.trim(se(d)), [p] = Wt.split(c);
2121
+ i(Br(u, p, l, d));
2122
+ } else i(F);
2123
+ }
2124
+ }, "children"), s;
2125
+ }
2126
+ function Br(e, t, n, r) {
2127
+ return e ? "" : n.type === "JSXElement" && !n.closingElement || r?.type === "JSXElement" && !r.closingElement ? t.length === 1 ? E : F : E;
2128
+ }
2129
+ function vr(e, t, n, r) {
2130
+ return e ? F : t.length === 1 ? n.type === "JSXElement" && !n.closingElement || r?.type === "JSXElement" && !r.closingElement ? F : E : F;
2131
+ }
2132
+ var Lp = /* @__PURE__ */ new Set(["ArrayExpression", "JSXAttribute", "JSXElement", "JSXExpressionContainer", "JSXFragment", "ExpressionStatement", "CallExpression", "OptionalCallExpression", "ConditionalExpression", "JsExpressionRoot"]);
2133
+ function Mp(e, t, n) {
2134
+ let { parent: r } = e;
2135
+ if (Lp.has(r.type)) return t;
2136
+ let u = Op(e), a = ut(e, n);
2137
+ return m([a ? "" : w("("), A([E, t]), E, a ? "" : w(")")], { shouldBreak: u });
2138
+ }
2139
+ function Op(e) {
2140
+ return e.match(void 0, (t) => t.type === "ArrowFunctionExpression", L) && (e.match(void 0, void 0, void 0, (t) => t.type === "JSXExpressionContainer") || e.match(void 0, void 0, void 0, (t) => t.type === "ChainExpression", (t) => t.type === "JSXExpressionContainer"));
2141
+ }
2142
+ function Jp(e, t, n) {
2143
+ let { node: r } = e, u = [];
2144
+ if (u.push(n("name")), r.value) {
2145
+ let a;
2146
+ if (Y(r.value)) {
2147
+ let s = se(r.value), o = H(!1, H(!1, s.slice(1, -1), "&apos;", "'"), "&quot;", '"'), i = Gr(o, t.jsxSingleQuote);
2148
+ o = i === '"' ? H(!1, o, '"', "&quot;") : H(!1, o, "'", "&apos;"), a = e.call(() => Fe(e, He(i + o + i), t), "value");
2149
+ } else a = n("value");
2150
+ u.push("=", a);
2151
+ }
2152
+ return u;
2153
+ }
2154
+ function qp(e, t, n) {
2155
+ let { node: r } = e, u = (a, s) => a.type === "JSXEmptyExpression" || !h(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" || K(s) && (a.type === "ConditionalExpression" || ke(a)));
2156
+ return u(r.expression, e.parent) ? m(["{", n("expression"), we, "}"]) : m(["{", A([E, n("expression")]), E, we, "}"]);
2157
+ }
2158
+ function _p(e, t, n) {
2159
+ var r, u;
2160
+ let { node: a } = e, s = h(a.name) || h(a.typeParameters) || h(a.typeArguments);
2161
+ if (a.selfClosing && a.attributes.length === 0 && !s) return ["<", n("name"), a.typeArguments ? n("typeArguments") : n("typeParameters"), " />"];
2162
+ if (((r = a.attributes) == null ? void 0 : r.length) === 1 && Y(a.attributes[0].value) && !a.attributes[0].value.value.includes(`
2163
+ `) && !s && !h(a.attributes[0])) return m(["<", n("name"), a.typeArguments ? n("typeArguments") : n("typeParameters"), " ", ...e.map(n, "attributes"), a.selfClosing ? " />" : ">"]);
2164
+ let o = (u = a.attributes) == null ? void 0 : u.some((l) => Y(l.value) && l.value.value.includes(`
2165
+ `)), i = t.singleAttributePerLine && a.attributes.length > 1 ? F : C;
2166
+ return m(["<", n("name"), a.typeArguments ? n("typeArguments") : n("typeParameters"), A(e.map(() => [i, n()], "attributes")), ...Xp(a, t, s)], { shouldBreak: o });
2167
+ }
2168
+ function Xp(e, t, n) {
2169
+ return e.selfClosing ? [C, "/>"] : $p(e, t, n) ? [">"] : [E, ">"];
2170
+ }
2171
+ function $p(e, t, n) {
2172
+ let r = e.attributes.length > 0 && h(X(!1, e.attributes, -1), T.Trailing);
2173
+ return e.attributes.length === 0 && !n || (t.bracketSameLine || t.jsxBracketSameLine) && (!n || e.attributes.length > 0) && !r;
2174
+ }
2175
+ function Rp(e, t, n) {
2176
+ let { node: r } = e, u = [];
2177
+ u.push("</");
2178
+ let a = n("name");
2179
+ return h(r.name, T.Leading | T.Line) ? u.push(A([F, a]), F) : h(r.name, T.Leading | T.Block) ? u.push(" ", a) : u.push(a), u.push(">"), u;
2180
+ }
2181
+ function Wp(e, t) {
2182
+ let { node: n } = e, r = h(n), u = h(n, T.Line), a = n.type === "JSXOpeningFragment";
2183
+ return [a ? "<" : "</", A([u ? F : r && !a ? " " : "", $(e, t)]), u ? F : "", ">"];
2184
+ }
2185
+ function Up(e, t, n) {
2186
+ let r = Fe(e, Np(e, t, n), t);
2187
+ return Mp(e, r, t);
2188
+ }
2189
+ function Gp(e, t) {
2190
+ let { node: n } = e, r = h(n, T.Line);
2191
+ return [$(e, t, { indent: r }), r ? F : ""];
2192
+ }
2193
+ function Vp(e, t, n) {
2194
+ let { node: r } = e;
2195
+ return ["{", e.call(({ node: u }) => {
2196
+ let a = ["...", n()];
2197
+ return !h(u) || !vu(e) ? a : [A([E, Fe(e, a, t)]), E];
2198
+ }, r.type === "JSXSpreadAttribute" ? "argument" : "expression"), "}"];
2199
+ }
2200
+ function Kp(e, t, n) {
2201
+ let { node: r } = e;
2202
+ if (r.type.startsWith("JSX")) switch (r.type) {
2203
+ case "JSXAttribute":
2204
+ return Jp(e, t, n);
2205
+ case "JSXIdentifier":
2206
+ return r.name;
2207
+ case "JSXNamespacedName":
2208
+ return N(":", [n("namespace"), n("name")]);
2209
+ case "JSXMemberExpression":
2210
+ return N(".", [n("object"), n("property")]);
2211
+ case "JSXSpreadAttribute":
2212
+ case "JSXSpreadChild":
2213
+ return Vp(e, t, n);
2214
+ case "JSXExpressionContainer":
2215
+ return qp(e, t, n);
2216
+ case "JSXFragment":
2217
+ case "JSXElement":
2218
+ return Up(e, t, n);
2219
+ case "JSXOpeningElement":
2220
+ return _p(e, t, n);
2221
+ case "JSXClosingElement":
2222
+ return Rp(e, t, n);
2223
+ case "JSXOpeningFragment":
2224
+ case "JSXClosingFragment":
2225
+ return Wp(e, t);
2226
+ case "JSXEmptyExpression":
2227
+ return Gp(e, t);
2228
+ case "JSXText":
2229
+ throw new Error("JSXText should be handled by JSXElement");
2230
+ default:
2231
+ throw new At(r, "JSX");
2232
+ }
2233
+ }
2234
+ function Hp(e) {
2235
+ if (e.children.length === 0) return !0;
2236
+ if (e.children.length > 1) return !1;
2237
+ let t = e.children[0];
2238
+ return t.type === "JSXText" && !wt(t);
2239
+ }
2240
+ function wt(e) {
2241
+ return e.type === "JSXText" && (Wt.hasNonWhitespaceCharacter(se(e)) || !/\n/u.test(se(e)));
2242
+ }
2243
+ function zp(e) {
2244
+ return e.type === "JSXExpressionContainer" && Y(e.expression) && e.expression.value === " " && !h(e.expression);
2245
+ }
2246
+ function Qp(e) {
2247
+ let { node: t, parent: n } = e;
2248
+ if (!K(t) || !K(n)) return !1;
2249
+ let { index: r, siblings: u } = e, a;
2250
+ for (let s = r; s > 0; s--) {
2251
+ let o = u[s - 1];
2252
+ if (!(o.type === "JSXText" && !wt(o))) {
2253
+ a = o;
2254
+ break;
2255
+ }
2256
+ }
2257
+ return a?.type === "JSXExpressionContainer" && a.expression.type === "JSXEmptyExpression" && rn(a.expression);
2258
+ }
2259
+ function Yp(e) {
2260
+ return rn(e.node) || Qp(e);
2261
+ }
2262
+ var _u = Yp, Zp = 0;
2263
+ function Xu(e, t, n) {
2264
+ var r;
2265
+ let { node: u, parent: a, grandparent: s, key: o } = e, i = o !== "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 = jn(e, t, n, !1, i);
2266
+ if (i) return d;
2267
+ if (l) return m(d);
2268
+ if (L(a) && a.callee === u || a.type === "UnaryExpression" || R(a) && !a.computed) return m([A([E, ...d]), E]);
2269
+ let D = a.type === "ReturnStatement" || a.type === "ThrowStatement" || a.type === "JSXExpressionContainer" && s.type === "JSXAttribute" || u.operator !== "|" && a.type === "JsExpressionRoot" || u.type !== "NGPipeExpression" && (a.type === "NGRoot" && t.parser === "__ng_binding" || a.type === "NGMicrosyntaxExpression" && s.type === "NGMicrosyntax" && s.body.length === 1) || u === a.body && a.type === "ArrowFunctionExpression" || u !== a.body && a.type === "ForStatement" || a.type === "ConditionalExpression" && s.type !== "ReturnStatement" && s.type !== "ThrowStatement" && !L(s) || a.type === "TemplateLiteral", c = a.type === "AssignmentExpression" || a.type === "VariableDeclarator" || a.type === "ClassProperty" || a.type === "PropertyDefinition" || a.type === "TSAbstractPropertyDefinition" || a.type === "ClassPrivateProperty" || je(a), p = ke(u.left) && Vn(u.operator, u.left.operator);
2270
+ if (D || It(u) && !p || !It(u) && c) return m(d);
2271
+ if (d.length === 0) return "";
2272
+ let y = K(u.right), f = d.findIndex((v) => typeof v != "string" && !Array.isArray(v) && v.type === De), g = d.slice(0, f === -1 ? 1 : f + 1), S = d.slice(g.length, y ? -1 : void 0), b = /* @__PURE__ */ Symbol("logicalChain-" + ++Zp), x = m([...g, A(S)], { id: b });
2273
+ if (!y) return x;
2274
+ let j = X(!1, d, -1);
2275
+ return m([x, un(j, { groupId: b })]);
2276
+ }
2277
+ function jn(e, t, n, r, u) {
2278
+ var a;
2279
+ let { node: s } = e;
2280
+ if (!ke(s)) return [m(n())];
2281
+ let o = [];
2282
+ Vn(s.operator, s.left.operator) ? o = e.call((g) => jn(g, t, n, !0, u), "left") : o.push(m(n("left")));
2283
+ let i = It(s), l = (s.operator === "|>" || s.type === "NGPipeExpression" || el(e, t)) && !Te(t.originalText, s.right), d = !h(s.right, T.Leading, fu) && Te(t.originalText, s.right), D = s.type === "NGPipeExpression" ? "|" : s.operator, c = s.type === "NGPipeExpression" && s.arguments.length > 0 ? m(A([E, ": ", N([C, ": "], e.map(() => Be(2, m(n())), "arguments"))])) : "", p;
2284
+ if (i) p = [D, Te(t.originalText, s.right) ? A([C, n("right"), c]) : [" ", n("right"), c]];
2285
+ else {
2286
+ let g = D === "|>" && ((a = e.root.extra) != null && a.__isUsingHackPipeline) ? e.call((S) => jn(S, t, n, !0, u), "right") : n("right");
2287
+ if (t.experimentalOperatorPosition === "start") {
2288
+ let S = "";
2289
+ if (d) switch (Ge(g)) {
2290
+ case Pe:
2291
+ S = g.splice(0, 1)[0];
2292
+ break;
2293
+ case Le:
2294
+ S = g.contents.splice(0, 1)[0];
2295
+ break;
2296
+ }
2297
+ p = [C, S, D, " ", g, c];
2298
+ } else p = [l ? C : "", D, l ? " " : C, g, c];
2299
+ }
2300
+ let { parent: y } = e, f = h(s.left, T.Trailing | T.Line);
2301
+ if ((f || !(u && s.type === "LogicalExpression") && y.type !== s.type && s.left.type !== s.type && s.right.type !== s.type) && (p = m(p, { shouldBreak: f })), t.experimentalOperatorPosition === "start" ? o.push(i || d ? " " : "", p) : o.push(l ? "" : " ", p), r && h(s)) {
2302
+ let g = zn(Fe(e, o, t));
2303
+ return g.type === We ? g.parts : Array.isArray(g) ? g : [g];
2304
+ }
2305
+ return o;
2306
+ }
2307
+ function It(e) {
2308
+ return e.type !== "LogicalExpression" ? !1 : !!(Ae(e.right) && e.right.properties.length > 0 || Q(e.right) && e.right.elements.length > 0 || K(e.right));
2309
+ }
2310
+ var kr = (e) => e.type === "BinaryExpression" && e.operator === "|";
2311
+ function el(e, t) {
2312
+ return (t.parser === "__vue_expression" || t.parser === "__vue_ts_expression") && kr(e.node) && !e.hasAncestor((n) => !kr(n) && n.type !== "JsExpressionRoot");
2313
+ }
2314
+ function tl(e, t, n) {
2315
+ let { node: r } = e;
2316
+ if (r.type.startsWith("NG")) switch (r.type) {
2317
+ case "NGRoot":
2318
+ return [n("node"), h(r.node) ? " //" + Ke(r.node)[0].value.trimEnd() : ""];
2319
+ case "NGPipeExpression":
2320
+ return Xu(e, t, n);
2321
+ case "NGChainedExpression":
2322
+ return m(N([";", C], e.map(() => ul(e) ? n() : ["(", n(), ")"], "expressions")));
2323
+ case "NGEmptyExpression":
2324
+ return "";
2325
+ case "NGMicrosyntax":
2326
+ return e.map(() => [e.isFirst ? "" : Pr(e) ? " " : [";", C], n()], "body");
2327
+ case "NGMicrosyntaxKey":
2328
+ return /^[$_a-z][\w$]*(?:-[$_a-z][\w$])*$/iu.test(r.name) ? r.name : JSON.stringify(r.name);
2329
+ case "NGMicrosyntaxExpression":
2330
+ return [n("expression"), r.alias === null ? "" : [" as ", n("alias")]];
2331
+ case "NGMicrosyntaxKeyedExpression": {
2332
+ let { index: u, parent: a } = e, s = Pr(e) || nl(e) || (u === 1 && (r.key.name === "then" || r.key.name === "else" || r.key.name === "as") || u === 2 && (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";
2333
+ return [n("key"), s ? " " : ": ", n("expression")];
2334
+ }
2335
+ case "NGMicrosyntaxLet":
2336
+ return ["let ", n("key"), r.value === null ? "" : [" = ", n("value")]];
2337
+ case "NGMicrosyntaxAs":
2338
+ return [n("key"), " as ", n("alias")];
2339
+ default:
2340
+ throw new At(r, "Angular");
2341
+ }
2342
+ }
2343
+ function Pr({ node: e, index: t }) {
2344
+ return e.type === "NGMicrosyntaxKeyedExpression" && e.key.name === "of" && t === 1;
2345
+ }
2346
+ function nl(e) {
2347
+ let { node: t } = e;
2348
+ return e.parent.body[1].key.name === "of" && t.type === "NGMicrosyntaxKeyedExpression" && t.key.name === "track" && t.key.type === "NGMicrosyntaxKey";
2349
+ }
2350
+ var rl = _(["CallExpression", "OptionalCallExpression", "AssignmentExpression"]);
2351
+ function ul({ node: e }) {
2352
+ return Cn(e, rl);
2353
+ }
2354
+ function $u(e, t, n) {
2355
+ let { node: r } = e;
2356
+ return m([N(C, e.map(n, "decorators")), Ru(r, t) ? F : C]);
2357
+ }
2358
+ function al(e, t, n) {
2359
+ return Wu(e.node) ? [N(F, e.map(n, "declaration", "decorators")), F] : "";
2360
+ }
2361
+ function sl(e, t, n) {
2362
+ let { node: r, parent: u } = e, { decorators: a } = r;
2363
+ if (!J(a) || Wu(u) || _u(e)) return "";
2364
+ let s = r.type === "ClassExpression" || r.type === "ClassDeclaration" || Ru(r, t);
2365
+ return [e.key === "declaration" && Gs(u) ? F : s ? ve : "", N(C, e.map(n, "decorators")), C];
2366
+ }
2367
+ function Ru(e, t) {
2368
+ return e.decorators.some((n) => pe(t.originalText, I(n)));
2369
+ }
2370
+ function Wu(e) {
2371
+ var t;
2372
+ if (e.type !== "ExportDefaultDeclaration" && e.type !== "ExportNamedDeclaration" && e.type !== "DeclareExportDeclaration") return !1;
2373
+ let n = (t = e.declaration) == null ? void 0 : t.decorators;
2374
+ return J(n) && en(e, n[0]);
2375
+ }
2376
+ var zt = class extends Error {
2377
+ name = "ArgExpansionBailout";
2378
+ };
2379
+ function ol(e, t, n) {
2380
+ let { node: r } = e, u = de(r);
2381
+ if (u.length === 0) return ["(", $(e, t), ")"];
2382
+ let a = u.length - 1;
2383
+ if (ll(u)) {
2384
+ let D = ["("];
2385
+ return Kt(e, (c, p) => {
2386
+ D.push(n()), p !== a && D.push(", ");
2387
+ }), D.push(")"), D;
2388
+ }
2389
+ let s = !1, o = [];
2390
+ Kt(e, ({ node: D }, c) => {
2391
+ let p = n();
2392
+ c === a || (Ne(D, t) ? (s = !0, p = [p, ",", F, F]) : p = [p, ",", C]), o.push(p);
2393
+ });
2394
+ let i = !t.parser.startsWith("__ng_") && r.type !== "ImportExpression" && r.type !== "TSImportType" && Ie(t, "all") ? "," : "";
2395
+ if (r.type === "TSImportType" && u.length === 1 && (u[0].type === "TSLiteralType" && Y(u[0].literal) || Y(u[0])) && !h(u[0])) return m(["(", ...o, w(i), ")"]);
2396
+ function l() {
2397
+ return m(["(", A([C, ...o]), i, C, ")"], { shouldBreak: !0 });
2398
+ }
2399
+ if (s || e.parent.type !== "Decorator" && ro(u)) return l();
2400
+ if (pl(u)) {
2401
+ let D = o.slice(1);
2402
+ if (D.some(ne)) return l();
2403
+ let c;
2404
+ try {
2405
+ c = n(Ar(r, 0), { expandFirstArg: !0 });
2406
+ } catch (p) {
2407
+ if (p instanceof zt) return l();
2408
+ throw p;
2409
+ }
2410
+ return ne(c) ? [ve, Ve([["(", m(c, { shouldBreak: !0 }), ", ", ...D, ")"], l()])] : Ve([["(", c, ", ", ...D, ")"], ["(", m(c, { shouldBreak: !0 }), ", ", ...D, ")"], l()]);
2411
+ }
2412
+ if (il(u, o, t)) {
2413
+ let D = o.slice(0, -1);
2414
+ if (D.some(ne)) return l();
2415
+ let c;
2416
+ try {
2417
+ c = n(Ar(r, -1), { expandLastArg: !0 });
2418
+ } catch (p) {
2419
+ if (p instanceof zt) return l();
2420
+ throw p;
2421
+ }
2422
+ return ne(c) ? [ve, Ve([["(", ...D, m(c, { shouldBreak: !0 }), ")"], l()])] : Ve([["(", ...D, c, ")"], ["(", ...D, m(c, { shouldBreak: !0 }), ")"], l()]);
2423
+ }
2424
+ let d = ["(", A([E, ...o]), w(i), E, ")"];
2425
+ return su(e) ? d : m(d, { shouldBreak: o.some(ne) || s });
2426
+ }
2427
+ function Bt(e, t = !1) {
2428
+ return Ae(e) && (e.properties.length > 0 || h(e)) || Q(e) && (e.elements.length > 0 || h(e)) || e.type === "TSTypeAssertion" && Bt(e.expression) || Ce(e) && Bt(e.expression) || e.type === "FunctionExpression" || e.type === "ArrowFunctionExpression" && (!e.returnType || !e.returnType.typeAnnotation || e.returnType.typeAnnotation.type !== "TSTypeReference" || cl(e.body)) && (e.body.type === "BlockStatement" || e.body.type === "ArrowFunctionExpression" && Bt(e.body, !0) || Ae(e.body) || Q(e.body) || !t && (L(e.body) || e.body.type === "ConditionalExpression") || K(e.body)) || e.type === "DoExpression" || e.type === "ModuleExpression";
2429
+ }
2430
+ function il(e, t, n) {
2431
+ var r, u;
2432
+ let a = X(!1, e, -1);
2433
+ if (e.length === 1) {
2434
+ let o = X(!1, t, -1);
2435
+ if ((r = o.label) != null && r.embed && ((u = o.label) == null ? void 0 : u.hug) !== !1) return !0;
2436
+ }
2437
+ let s = X(!1, e, -2);
2438
+ return !h(a, T.Leading) && !h(a, T.Trailing) && Bt(a) && (!s || s.type !== a.type) && (e.length !== 2 || s.type !== "ArrowFunctionExpression" || !Q(a)) && !(e.length > 1 && fa(a, n));
2439
+ }
2440
+ function pl(e) {
2441
+ if (e.length !== 2) return !1;
2442
+ let [t, n] = e;
2443
+ return t.type === "ModuleExpression" && Dl(n) ? !0 : !h(t) && (t.type === "FunctionExpression" || t.type === "ArrowFunctionExpression" && t.body.type === "BlockStatement") && n.type !== "FunctionExpression" && n.type !== "ArrowFunctionExpression" && n.type !== "ConditionalExpression" && Uu(n) && !Bt(n);
2444
+ }
2445
+ function Uu(e) {
2446
+ if (e.type === "ParenthesizedExpression") return Uu(e.expression);
2447
+ if (Ce(e) || e.type === "TypeCastExpression") {
2448
+ let { typeAnnotation: t } = e;
2449
+ 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") {
2450
+ let n = t.typeArguments ?? t.typeParameters;
2451
+ n?.params.length === 1 && (t = n.params[0]);
2452
+ }
2453
+ return Un(t) && Ee(e.expression, 1);
2454
+ }
2455
+ return dt(e) && de(e).length > 1 ? !1 : ke(e) ? Ee(e.left, 1) && Ee(e.right, 1) : eu(e) || Ee(e);
2456
+ }
2457
+ function ll(e) {
2458
+ return e.length === 2 ? wr(e, 0) : e.length === 3 ? e[0].type === "Identifier" && wr(e, 1) : !1;
2459
+ }
2460
+ function wr(e, t) {
2461
+ let n = e[t], r = e[t + 1];
2462
+ return n.type === "ArrowFunctionExpression" && Z(n).length === 0 && n.body.type === "BlockStatement" && r.type === "ArrayExpression" && !e.some((u) => h(u));
2463
+ }
2464
+ function cl(e) {
2465
+ return e.type === "BlockStatement" && (e.body.some((t) => t.type !== "EmptyStatement") || h(e, T.Dangling));
2466
+ }
2467
+ function Dl(e) {
2468
+ if (!(e.type === "ObjectExpression" && e.properties.length === 1)) return !1;
2469
+ let [t] = e.properties;
2470
+ return je(t) ? !t.computed && (t.key.type === "Identifier" && t.key.name === "type" || Y(t.key) && t.key.value === "type") && Y(t.value) && t.value.value === "module" : !1;
2471
+ }
2472
+ var Qt = ol, yl = (e) => ((e.type === "ChainExpression" || e.type === "TSNonNullExpression") && (e = e.expression), L(e) && de(e).length > 0);
2473
+ function dl(e, t, n) {
2474
+ var r;
2475
+ let u = n("object"), a = Gu(e, t, n), { node: s } = e, o = e.findAncestor((d) => !(R(d) || d.type === "TSNonNullExpression")), i = e.findAncestor((d) => !(d.type === "ChainExpression" || d.type === "TSNonNullExpression")), l = o && (o.type === "NewExpression" || o.type === "BindExpression" || o.type === "AssignmentExpression" && o.left.type !== "Identifier") || s.computed || s.object.type === "Identifier" && s.property.type === "Identifier" && !R(i) || (i.type === "AssignmentExpression" || i.type === "VariableDeclarator") && (yl(s.object) || ((r = u.label) == null ? void 0 : r.memberChain));
2476
+ return jt(u.label, [u, l ? a : m(A([E, a]))]);
2477
+ }
2478
+ function Gu(e, t, n) {
2479
+ let r = n("property"), { node: u } = e, a = re(e);
2480
+ return u.computed ? !u.property || be(u.property) ? [a, "[", r, "]"] : m([a, "[", A([E, r]), E, "]"]) : [a, ".", r];
2481
+ }
2482
+ function Vu(e, t, n) {
2483
+ if (e.node.type === "ChainExpression") return e.call(() => Vu(e, t, n), "expression");
2484
+ let r = (e.parent.type === "ChainExpression" ? e.grandparent : e.parent).type === "ExpressionStatement", u = [];
2485
+ function a(P) {
2486
+ let { originalText: V } = t, ue = Ft(V, I(P));
2487
+ return V.charAt(ue) === ")" ? ue !== !1 && Xn(V, ue + 1) : Ne(P, t);
2488
+ }
2489
+ function s() {
2490
+ let { node: P } = e;
2491
+ if (P.type === "ChainExpression") return e.call(s, "expression");
2492
+ if (L(P) && (it(P.callee) || L(P.callee))) {
2493
+ let V = a(P);
2494
+ u.unshift({ node: P, hasTrailingEmptyLine: V, printed: [Fe(e, [re(e), ze(e, t, n), Qt(e, t, n)], t), V ? F : ""] }), e.call(s, "callee");
2495
+ } else it(P) ? (u.unshift({ node: P, needsParens: ut(e, t), printed: Fe(e, R(P) ? Gu(e, t, n) : da(e, t, n), t) }), e.call(s, "object")) : P.type === "TSNonNullExpression" ? (u.unshift({ node: P, printed: Fe(e, "!", t) }), e.call(s, "expression")) : u.unshift({ node: P, printed: n() });
2496
+ }
2497
+ let { node: o } = e;
2498
+ u.unshift({ node: o, printed: [re(e), ze(e, t, n), Qt(e, t, n)] }), o.callee && e.call(s, "callee");
2499
+ let i = [], l = [u[0]], d = 1;
2500
+ for (; d < u.length && (u[d].node.type === "TSNonNullExpression" || L(u[d].node) || R(u[d].node) && u[d].node.computed && be(u[d].node.property)); ++d) l.push(u[d]);
2501
+ if (!L(u[0].node)) for (; d + 1 < u.length && it(u[d].node) && it(u[d + 1].node); ++d) l.push(u[d]);
2502
+ i.push(l), l = [];
2503
+ let D = !1;
2504
+ for (; d < u.length; ++d) {
2505
+ if (D && it(u[d].node)) {
2506
+ if (u[d].node.computed && be(u[d].node.property)) {
2507
+ l.push(u[d]);
2508
+ continue;
2509
+ }
2510
+ i.push(l), l = [], D = !1;
2511
+ }
2512
+ (L(u[d].node) || u[d].node.type === "ImportExpression") && (D = !0), l.push(u[d]), h(u[d].node, T.Trailing) && (i.push(l), l = [], D = !1);
2513
+ }
2514
+ l.length > 0 && i.push(l);
2515
+ function c(P) {
2516
+ return /^[A-Z]|^[$_]+$/u.test(P);
2517
+ }
2518
+ function p(P) {
2519
+ return P.length <= t.tabWidth;
2520
+ }
2521
+ function y(P) {
2522
+ var V;
2523
+ let ue = (V = P[1][0]) == null ? void 0 : V.node.computed;
2524
+ if (P[0].length === 1) {
2525
+ let xe = P[0][0].node;
2526
+ return xe.type === "ThisExpression" || xe.type === "Identifier" && (c(xe.name) || r && p(xe.name) || ue);
2527
+ }
2528
+ let st = X(!1, P[0], -1).node;
2529
+ return R(st) && st.property.type === "Identifier" && (c(st.property.name) || ue);
2530
+ }
2531
+ let f = i.length >= 2 && !h(i[1][0].node) && y(i);
2532
+ function g(P) {
2533
+ let V = P.map((ue) => ue.printed);
2534
+ return P.length > 0 && X(!1, P, -1).needsParens ? ["(", ...V, ")"] : V;
2535
+ }
2536
+ function S(P) {
2537
+ return P.length === 0 ? "" : A([F, N(F, P.map(g))]);
2538
+ }
2539
+ let b = i.map(g), x = b, j = f ? 3 : 2, v = i.flat(), B = v.slice(1, -1).some((P) => h(P.node, T.Leading)) || v.slice(0, -1).some((P) => h(P.node, T.Trailing)) || i[j] && h(i[j][0].node, T.Leading);
2540
+ if (i.length <= j && !B && !i.some((P) => X(!1, P, -1).hasTrailingEmptyLine)) return su(e) ? x : m(x);
2541
+ let M = X(!1, i[f ? 1 : 0], -1).node, k = !L(M) && a(M), O = [g(i[0]), f ? i.slice(1, 2).map(g) : "", k ? F : "", S(i.slice(f ? 2 : 1))], G = u.map(({ node: P }) => P).filter(L);
2542
+ function U() {
2543
+ let P = X(!1, X(!1, i, -1), -1).node, V = X(!1, b, -1);
2544
+ return L(P) && ne(V) && G.slice(0, -1).some((ue) => ue.arguments.some(kt));
2545
+ }
2546
+ let Oe;
2547
+ return B || G.length > 2 && G.some((P) => !P.arguments.every((V) => Ee(V))) || b.slice(0, -1).some(ne) || U() ? Oe = m(O) : Oe = [ne(x) || k ? ve : "", Ve([x, O])], jt({ memberChain: !0 }, Oe);
2548
+ }
2549
+ var ml = Vu;
2550
+ function Ku(e, t, n) {
2551
+ var r;
2552
+ let { node: u } = e, a = u.type === "NewExpression", s = u.type === "ImportExpression", o = re(e), i = de(u), l = i.length === 1 && uu(i[0], t.originalText);
2553
+ if (l || fl(e) || nn(u, e.parent)) {
2554
+ let D = [];
2555
+ if (Kt(e, () => {
2556
+ D.push(n());
2557
+ }), !(l && (r = D[0].label) != null && r.embed)) return [a ? "new " : "", Ir(e, n), o, ze(e, t, n), "(", N(", ", D), ")"];
2558
+ }
2559
+ if (!s && !a && it(u.callee) && !e.call((D) => ut(D, t), "callee", ...u.callee.type === "ChainExpression" ? ["expression"] : [])) return ml(e, t, n);
2560
+ let d = [a ? "new " : "", Ir(e, n), o, ze(e, t, n), Qt(e, t, n)];
2561
+ return s || L(u.callee) ? m(d) : d;
2562
+ }
2563
+ function Ir(e, t) {
2564
+ let { node: n } = e;
2565
+ return n.type === "ImportExpression" ? `import${n.phase ? `.${n.phase}` : ""}` : t("callee");
2566
+ }
2567
+ function fl(e) {
2568
+ let { node: t } = e;
2569
+ if (t.type !== "CallExpression" || t.optional || t.callee.type !== "Identifier") return !1;
2570
+ let n = de(t);
2571
+ return t.callee.name === "require" ? n.length === 1 && Y(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 && Y(n[0]) && n[1].type === "ArrayExpression" : !1;
2572
+ }
2573
+ function Lt(e, t, n, r, u, a) {
2574
+ let s = Al(e, t, n, r, a), o = a ? n(a, { assignmentLayout: s }) : "";
2575
+ switch (s) {
2576
+ case "break-after-operator":
2577
+ return m([m(r), u, m(A([C, o]))]);
2578
+ case "never-break-after-operator":
2579
+ return m([m(r), u, " ", o]);
2580
+ case "fluid": {
2581
+ let i = /* @__PURE__ */ Symbol("assignment");
2582
+ return m([m(r), u, m(A(C), { id: i }), we, un(o, { groupId: i })]);
2583
+ }
2584
+ case "break-lhs":
2585
+ return m([r, u, " ", m(o)]);
2586
+ case "chain":
2587
+ return [m(r), u, C, o];
2588
+ case "chain-tail":
2589
+ return [m(r), u, A([C, o])];
2590
+ case "chain-tail-arrow-chain":
2591
+ return [m(r), u, o];
2592
+ case "only-left":
2593
+ return r;
2594
+ }
2595
+ }
2596
+ function El(e, t, n) {
2597
+ let { node: r } = e;
2598
+ return Lt(e, t, n, n("left"), [" ", r.operator], "right");
2599
+ }
2600
+ function Fl(e, t, n) {
2601
+ return Lt(e, t, n, n("id"), " =", "init");
2602
+ }
2603
+ function Al(e, t, n, r, u) {
2604
+ let { node: a } = e, s = a[u];
2605
+ if (!s) return "only-left";
2606
+ let o = !Ut(s);
2607
+ if (e.match(Ut, Hu, (d) => !o || d.type !== "ExpressionStatement" && d.type !== "VariableDeclaration")) return o ? s.type === "ArrowFunctionExpression" && s.body.type === "ArrowFunctionExpression" ? "chain-tail-arrow-chain" : "chain-tail" : "chain";
2608
+ if (!o && Ut(s.right) || Te(t.originalText, s)) return "break-after-operator";
2609
+ if (a.type === "ImportAttribute" || s.type === "CallExpression" && s.callee.name === "require" || t.parser === "json5" || t.parser === "jsonc" || t.parser === "json") return "never-break-after-operator";
2610
+ let i = Co(r);
2611
+ if (xl(a) || Sl(a) || zu(a) && i) return "break-lhs";
2612
+ let l = Bl(a, r, t);
2613
+ return e.call(() => gl(e, t, n, l), u) ? "break-after-operator" : hl(a) ? "break-lhs" : !i && (l || s.type === "TemplateLiteral" || s.type === "TaggedTemplateExpression" || Ks(s) || be(s) || s.type === "ClassExpression") ? "never-break-after-operator" : "fluid";
2614
+ }
2615
+ function gl(e, t, n, r) {
2616
+ let u = e.node;
2617
+ if (ke(u) && !It(u)) return !0;
2618
+ switch (u.type) {
2619
+ case "StringLiteralTypeAnnotation":
2620
+ case "SequenceExpression":
2621
+ return !0;
2622
+ case "TSConditionalType":
2623
+ case "ConditionalTypeAnnotation":
2624
+ if (!t.experimentalTernaries && !Pl(u)) break;
2625
+ return !0;
2626
+ case "ConditionalExpression": {
2627
+ if (!t.experimentalTernaries) {
2628
+ let { test: l } = u;
2629
+ return ke(l) && !It(l);
2630
+ }
2631
+ let { consequent: o, alternate: i } = u;
2632
+ return o.type === "ConditionalExpression" || i.type === "ConditionalExpression";
2633
+ }
2634
+ case "ClassExpression":
2635
+ return J(u.decorators);
2636
+ }
2637
+ if (r) return !1;
2638
+ let a = u, s = [];
2639
+ for (; ; ) if (a.type === "UnaryExpression" || a.type === "AwaitExpression" || a.type === "YieldExpression" && a.argument !== null) a = a.argument, s.push("argument");
2640
+ else if (a.type === "TSNonNullExpression") a = a.expression, s.push("expression");
2641
+ else break;
2642
+ return !!(Y(a) || e.call(() => Qu(e, t, n), ...s));
2643
+ }
2644
+ function xl(e) {
2645
+ if (Hu(e)) {
2646
+ let t = e.left || e.id;
2647
+ return t.type === "ObjectPattern" && t.properties.length > 2 && t.properties.some((n) => {
2648
+ var r;
2649
+ return je(n) && (!n.shorthand || ((r = n.value) == null ? void 0 : r.type) === "AssignmentPattern");
2650
+ });
2651
+ }
2652
+ return !1;
2653
+ }
2654
+ function Ut(e) {
2655
+ return e.type === "AssignmentExpression";
2656
+ }
2657
+ function Hu(e) {
2658
+ return Ut(e) || e.type === "VariableDeclarator";
2659
+ }
2660
+ function hl(e) {
2661
+ let t = Tl(e);
2662
+ if (J(t)) {
2663
+ let n = e.type === "TSTypeAliasDeclaration" ? "constraint" : "bound";
2664
+ if (t.length > 1 && t.some((r) => r[n] || r.default)) return !0;
2665
+ }
2666
+ return !1;
2667
+ }
2668
+ var Cl = _(["TSTypeAliasDeclaration", "TypeAlias"]);
2669
+ function Tl(e) {
2670
+ var t;
2671
+ if (Cl(e)) return (t = e.typeParameters) == null ? void 0 : t.params;
2672
+ }
2673
+ function Sl(e) {
2674
+ if (e.type !== "VariableDeclarator") return !1;
2675
+ let { typeAnnotation: t } = e.id;
2676
+ if (!t || !t.typeAnnotation) return !1;
2677
+ let n = Nr(t.typeAnnotation);
2678
+ return J(n) && n.length > 1 && n.some((r) => J(Nr(r)) || r.type === "TSConditionalType");
2679
+ }
2680
+ function zu(e) {
2681
+ var t;
2682
+ return e.type === "VariableDeclarator" && ((t = e.init) == null ? void 0 : t.type) === "ArrowFunctionExpression";
2683
+ }
2684
+ var bl = _(["TSTypeReference", "GenericTypeAnnotation"]);
2685
+ function Nr(e) {
2686
+ var t;
2687
+ if (bl(e)) return (t = e.typeArguments ?? e.typeParameters) == null ? void 0 : t.params;
2688
+ }
2689
+ function Qu(e, t, n, r = !1) {
2690
+ var u;
2691
+ let { node: a } = e, s = () => Qu(e, t, n, !0);
2692
+ if (a.type === "ChainExpression" || a.type === "TSNonNullExpression") return e.call(s, "expression");
2693
+ if (L(a)) {
2694
+ if ((u = Ku(e, t, n).label) != null && u.memberChain) return !1;
2695
+ let o = de(a);
2696
+ return !(o.length === 0 || o.length === 1 && Gn(o[0], t)) || vl(a, n) ? !1 : e.call(s, "callee");
2697
+ }
2698
+ return R(a) ? e.call(s, "object") : r && (a.type === "Identifier" || a.type === "ThisExpression");
2699
+ }
2700
+ function Bl(e, t, n) {
2701
+ return je(e) ? (t = zn(t), typeof t == "string" && lt(t) < n.tabWidth + 3) : !1;
2702
+ }
2703
+ function vl(e, t) {
2704
+ let n = kl(e);
2705
+ if (J(n)) {
2706
+ if (n.length > 1) return !0;
2707
+ if (n.length === 1) {
2708
+ let u = n[0];
2709
+ if ($e(u) || Kn(u) || u.type === "TSTypeLiteral" || u.type === "ObjectTypeAnnotation") return !0;
2710
+ }
2711
+ let r = e.typeParameters ? "typeParameters" : "typeArguments";
2712
+ if (ne(t(r))) return !0;
2713
+ }
2714
+ return !1;
2715
+ }
2716
+ function kl(e) {
2717
+ var t;
2718
+ return (t = e.typeParameters ?? e.typeArguments) == null ? void 0 : t.params;
2719
+ }
2720
+ function Pl(e) {
2721
+ function t(n) {
2722
+ switch (n.type) {
2723
+ case "FunctionTypeAnnotation":
2724
+ case "GenericTypeAnnotation":
2725
+ case "TSFunctionType":
2726
+ return !!n.typeParameters;
2727
+ case "TSTypeReference":
2728
+ return !!(n.typeArguments ?? n.typeParameters);
2729
+ default:
2730
+ return !1;
2731
+ }
2732
+ }
2733
+ return t(e.checkType) || t(e.extendsType);
2734
+ }
2735
+ function at(e, t, n, r, u) {
2736
+ let a = e.node, s = Z(a), o = u ? ze(e, t, n) : "";
2737
+ if (s.length === 0) return [o, "(", $(e, t, { filter: (p) => ge(t.originalText, I(p)) === ")" }), ")"];
2738
+ let { parent: i } = e, l = nn(i), d = Yu(a), D = [];
2739
+ if (po(e, (p, y) => {
2740
+ let f = y === s.length - 1;
2741
+ f && a.rest && D.push("..."), D.push(n()), !f && (D.push(","), l || d ? D.push(" ") : Ne(s[y], t) ? D.push(F, F) : D.push(C));
2742
+ }), r && !Il(e)) {
2743
+ if (ne(o) || ne(D)) throw new zt();
2744
+ return m([Sn(o), "(", Sn(D), ")"]);
2745
+ }
2746
+ let c = s.every((p) => !J(p.decorators));
2747
+ return d && c ? [o, "(", ...D, ")"] : l ? [o, "(", ...D, ")"] : (tu(i) || Qs(i) || i.type === "TypeAlias" || i.type === "UnionTypeAnnotation" || i.type === "IntersectionTypeAnnotation" || i.type === "FunctionTypeAnnotation" && i.returnType === a) && s.length === 1 && s[0].name === null && a.this !== s[0] && s[0].typeAnnotation && a.typeParameters === null && Un(s[0].typeAnnotation) && !a.rest ? t.arrowParens === "always" || a.type === "HookTypeAnnotation" ? ["(", ...D, ")"] : D : [o, "(", A([E, ...D]), w(!io(a) && Ie(t, "all") ? "," : ""), E, ")"];
2748
+ }
2749
+ function Yu(e) {
2750
+ if (!e) return !1;
2751
+ let t = Z(e);
2752
+ if (t.length !== 1) return !1;
2753
+ let [n] = t;
2754
+ return !h(n) && (n.type === "ObjectPattern" || n.type === "ArrayPattern" || n.type === "Identifier" && n.typeAnnotation && (n.typeAnnotation.type === "TypeAnnotation" || n.typeAnnotation.type === "TSTypeAnnotation") && Xe(n.typeAnnotation.typeAnnotation) || n.type === "FunctionTypeParam" && Xe(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));
2755
+ }
2756
+ function wl(e) {
2757
+ let t;
2758
+ return e.returnType ? (t = e.returnType, t.typeAnnotation && (t = t.typeAnnotation)) : e.typeAnnotation && (t = e.typeAnnotation), t;
2759
+ }
2760
+ function gt(e, t) {
2761
+ var n;
2762
+ let r = wl(e);
2763
+ if (!r) return !1;
2764
+ let u = (n = e.typeParameters) == null ? void 0 : n.params;
2765
+ if (u) {
2766
+ if (u.length > 1) return !1;
2767
+ if (u.length === 1) {
2768
+ let a = u[0];
2769
+ if (a.constraint || a.default) return !1;
2770
+ }
2771
+ }
2772
+ return Z(e).length === 1 && (Xe(r) || ne(t));
2773
+ }
2774
+ function Il(e) {
2775
+ return e.match((t) => t.type === "ArrowFunctionExpression" && t.body.type === "BlockStatement", (t, n) => {
2776
+ if (t.type === "CallExpression" && n === "arguments" && t.arguments.length === 1 && t.callee.type === "CallExpression") {
2777
+ let r = t.callee.callee;
2778
+ return r.type === "Identifier" || r.type === "MemberExpression" && !r.computed && r.object.type === "Identifier" && r.property.type === "Identifier";
2779
+ }
2780
+ return !1;
2781
+ }, (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);
2782
+ }
2783
+ function Nl(e) {
2784
+ let t = Z(e);
2785
+ return t.length > 1 && t.some((n) => n.type === "TSParameterProperty");
2786
+ }
2787
+ var jl = _(["VoidTypeAnnotation", "TSVoidKeyword", "NullLiteralTypeAnnotation", "TSNullKeyword"]), Ll = _(["ObjectTypeAnnotation", "TSTypeLiteral", "GenericTypeAnnotation", "TSTypeReference"]);
2788
+ function Ml(e) {
2789
+ let { types: t } = e;
2790
+ if (t.some((r) => h(r))) return !1;
2791
+ let n = t.find((r) => Ll(r));
2792
+ return n ? t.every((r) => r === n || jl(r)) : !1;
2793
+ }
2794
+ function Zu(e) {
2795
+ return Un(e) || Xe(e) ? !0 : $e(e) ? Ml(e) : !1;
2796
+ }
2797
+ function Ol(e, t, n) {
2798
+ let r = t.semi ? ";" : "", { node: u } = e, a = [oe(e), "opaque type ", n("id"), n("typeParameters")];
2799
+ return u.supertype && a.push(": ", n("supertype")), u.impltype && a.push(" = ", n("impltype")), a.push(r), a;
2800
+ }
2801
+ function ea(e, t, n) {
2802
+ let r = t.semi ? ";" : "", { node: u } = e, a = [oe(e)];
2803
+ a.push("type ", n("id"), n("typeParameters"));
2804
+ let s = u.type === "TSTypeAliasDeclaration" ? "typeAnnotation" : "right";
2805
+ return [Lt(e, t, n, a, " =", s), r];
2806
+ }
2807
+ function ta(e, t, n) {
2808
+ let r = !1;
2809
+ return m(e.map(({ isFirst: u, previous: a, node: s, index: o }) => {
2810
+ let i = n();
2811
+ if (u) return i;
2812
+ let l = Xe(s), d = Xe(a);
2813
+ return d && l ? [" & ", r ? A(i) : i] : !d && !l || Te(t.originalText, s) ? t.experimentalOperatorPosition === "start" ? A([C, "& ", i]) : A([" &", C, i]) : (o > 1 && (r = !0), [" & ", o > 1 ? A(i) : i]);
2814
+ }, "types"));
2815
+ }
2816
+ function na(e, t, n) {
2817
+ let { node: r } = e, { parent: u } = e, a = u.type !== "TypeParameterInstantiation" && (!Re(u) || !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") && Te(t.originalText, r)), s = Zu(r), o = e.map((d) => {
2818
+ let D = n();
2819
+ return s || (D = Be(2, D)), Fe(d, D, t);
2820
+ }, "types");
2821
+ if (s) return N(" | ", o);
2822
+ let i = a && !Te(t.originalText, r), l = [w([i ? C : "", "| "]), N([C, "| "], o)];
2823
+ return ut(e, t) ? m([A(l), E]) : (u.type === "TupleTypeAnnotation" || u.type === "TSTupleType") && u[u.type === "TupleTypeAnnotation" && u.types ? "types" : "elementTypes"].length > 1 ? m([A([w(["(", E]), l]), E, w(")")]) : m(a ? A(l) : l);
2824
+ }
2825
+ function Jl(e) {
2826
+ var t;
2827
+ let { node: n, parent: r } = e;
2828
+ return n.type === "FunctionTypeAnnotation" && (tu(r) || !((r.type === "ObjectTypeProperty" || r.type === "ObjectTypeInternalSlot") && !r.variance && !r.optional && en(r, n) || r.type === "ObjectTypeCallProperty" || ((t = e.getParentNode(2)) == null ? void 0 : t.type) === "DeclareFunction"));
2829
+ }
2830
+ function ra(e, t, n) {
2831
+ let { node: r } = e, u = [an(e)];
2832
+ (r.type === "TSConstructorType" || r.type === "TSConstructSignatureDeclaration") && u.push("new ");
2833
+ let a = at(e, t, n, !1, !0), s = [];
2834
+ return r.type === "FunctionTypeAnnotation" ? s.push(Jl(e) ? " => " : ": ", n("returnType")) : s.push(z(e, n, r.returnType ? "returnType" : "typeAnnotation")), gt(r, s) && (a = m(a)), u.push(a, s), m(u);
2835
+ }
2836
+ function ua(e, t, n) {
2837
+ return [n("objectType"), re(e), "[", n("indexType"), "]"];
2838
+ }
2839
+ function aa(e, t, n) {
2840
+ return ["infer ", n("typeParameter")];
2841
+ }
2842
+ function jr(e, t, n) {
2843
+ let { node: r } = e;
2844
+ return [r.postfix ? "" : n, z(e, t), r.postfix ? n : ""];
2845
+ }
2846
+ function sa(e, t, n) {
2847
+ let { node: r } = e;
2848
+ return ["...", ...r.type === "TupleTypeSpreadElement" && r.label ? [n("label"), ": "] : [], n("typeAnnotation")];
2849
+ }
2850
+ function oa(e, t, n) {
2851
+ let { node: r } = e;
2852
+ return [r.variance ? n("variance") : "", n("label"), r.optional ? "?" : "", ": ", n("elementType")];
2853
+ }
2854
+ var ql = /* @__PURE__ */ new WeakSet();
2855
+ function z(e, t, n = "typeAnnotation") {
2856
+ let { node: { [n]: r } } = e;
2857
+ if (!r) return "";
2858
+ let u = !1;
2859
+ if (r.type === "TSTypeAnnotation" || r.type === "TypeAnnotation") {
2860
+ let a = e.call(ia, n);
2861
+ (a === "=>" || a === ":" && h(r, T.Leading)) && (u = !0), ql.add(r);
2862
+ }
2863
+ return u ? [" ", t(n)] : t(n);
2864
+ }
2865
+ var ia = (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) ? "" : ":";
2866
+ function pa(e, t, n) {
2867
+ let r = ia(e);
2868
+ return r ? [r, " ", n("typeAnnotation")] : n("typeAnnotation");
2869
+ }
2870
+ function la(e) {
2871
+ return [e("elementType"), "[]"];
2872
+ }
2873
+ function ca({ node: e }, t) {
2874
+ let n = e.type === "TSTypeQuery" ? "exprName" : "argument", r = e.type === "TypeofTypeAnnotation" || e.typeArguments ? "typeArguments" : "typeParameters";
2875
+ return ["typeof ", t(n), t(r)];
2876
+ }
2877
+ function Da(e, t) {
2878
+ let { node: n } = e;
2879
+ return [n.type === "TSTypePredicate" && n.asserts ? "asserts " : n.type === "TypePredicate" && n.kind ? `${n.kind} ` : "", t("parameterName"), n.typeAnnotation ? [" is ", z(e, t)] : ""];
2880
+ }
2881
+ function re(e) {
2882
+ let { node: t } = e;
2883
+ return !t.optional || t.type === "Identifier" && t === e.parent.key ? "" : L(t) || R(t) && t.computed || t.type === "OptionalIndexedAccessType" ? "?." : "?";
2884
+ }
2885
+ function ya(e) {
2886
+ return e.node.definite || e.match(void 0, (t, n) => n === "id" && t.type === "VariableDeclarator" && t.definite) ? "!" : "";
2887
+ }
2888
+ var _l = /* @__PURE__ */ new Set(["DeclareClass", "DeclareComponent", "DeclareFunction", "DeclareHook", "DeclareVariable", "DeclareExportDeclaration", "DeclareExportAllDeclaration", "DeclareOpaqueType", "DeclareTypeAlias", "DeclareEnum", "DeclareInterface"]);
2889
+ function oe(e) {
2890
+ let { node: t } = e;
2891
+ return t.declare || _l.has(t.type) && e.parent.type !== "DeclareExportDeclaration" ? "declare " : "";
2892
+ }
2893
+ var Xl = /* @__PURE__ */ new Set(["TSAbstractMethodDefinition", "TSAbstractPropertyDefinition", "TSAbstractAccessorProperty"]);
2894
+ function an({ node: e }) {
2895
+ return e.abstract || Xl.has(e.type) ? "abstract " : "";
2896
+ }
2897
+ function ze(e, t, n) {
2898
+ let r = e.node;
2899
+ return r.typeArguments ? n("typeArguments") : r.typeParameters ? n("typeParameters") : "";
2900
+ }
2901
+ function da(e, t, n) {
2902
+ return ["::", n("callee")];
2903
+ }
2904
+ function qe(e, t, n) {
2905
+ return e.type === "EmptyStatement" ? ";" : e.type === "BlockStatement" || n ? [" ", t] : A([C, t]);
2906
+ }
2907
+ function ma(e, t) {
2908
+ return ["...", t("argument"), z(e, t)];
2909
+ }
2910
+ function Yt(e) {
2911
+ return e.accessibility ? e.accessibility + " " : "";
2912
+ }
2913
+ function $l(e, t, n, r) {
2914
+ let { node: u } = e, a = u.inexact ? "..." : "";
2915
+ return h(u, T.Dangling) ? m([n, a, $(e, t, { indent: !0 }), E, r]) : [n, a, r];
2916
+ }
2917
+ function ur(e, t, n) {
2918
+ let { node: r } = e, u = [], a = "[", s = "]", o = r.type === "TupleTypeAnnotation" && r.types ? "types" : r.type === "TSTupleType" || r.type === "TupleTypeAnnotation" ? "elementTypes" : "elements", i = r[o];
2919
+ if (i.length === 0) u.push($l(e, t, a, s));
2920
+ else {
2921
+ let l = X(!1, i, -1), d = l?.type !== "RestElement" && !r.inexact, D = l === null, c = /* @__PURE__ */ Symbol("array"), p = !t.__inJestEach && i.length > 1 && i.every((g, S, b) => {
2922
+ let x = g?.type;
2923
+ if (!Q(g) && !Ae(g)) return !1;
2924
+ let j = b[S + 1];
2925
+ if (j && x !== j.type) return !1;
2926
+ let v = Q(g) ? "elements" : "properties";
2927
+ return g[v] && g[v].length > 1;
2928
+ }), y = fa(r, t), f = d ? D ? "," : Ie(t) ? y ? w(",", "", { groupId: c }) : w(",") : "" : "";
2929
+ u.push(m([a, A([E, y ? Wl(e, t, n, f) : [Rl(e, t, n, o, r.inexact), f], $(e, t)]), E, s], { shouldBreak: p, id: c }));
2930
+ }
2931
+ return u.push(re(e), z(e, n)), u;
2932
+ }
2933
+ function fa(e, t) {
2934
+ return Q(e) && e.elements.length > 1 && e.elements.every((n) => n && (be(n) || Zr(n) && !h(n.argument)) && !h(n, T.Trailing | T.Line, (r) => !pe(t.originalText, q(r), { backwards: !0 })));
2935
+ }
2936
+ function Ea({ node: e }, { originalText: t }) {
2937
+ let n = (u) => qn(t, _n(t, u)), r = (u) => t[u] === "," ? u : r(n(u + 1));
2938
+ return Xn(t, r(I(e)));
2939
+ }
2940
+ function Rl(e, t, n, r, u) {
2941
+ let a = [];
2942
+ return e.each(({ node: s, isLast: o }) => {
2943
+ a.push(s ? m(n()) : ""), (!o || u) && a.push([",", C, s && Ea(e, t) ? E : ""]);
2944
+ }, r), u && a.push("..."), a;
2945
+ }
2946
+ function Wl(e, t, n, r) {
2947
+ let u = [];
2948
+ return e.each(({ isLast: a, next: s }) => {
2949
+ u.push([n(), a ? r : ","]), a || u.push(Ea(e, t) ? [F, F] : h(s, T.Leading | T.Line) ? F : C);
2950
+ }, "elements"), Du(u);
2951
+ }
2952
+ var Ul = /^[\$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]*$/, Gl = (e) => Ul.test(e), Vl = Gl;
2953
+ function Kl(e) {
2954
+ 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, "");
2955
+ }
2956
+ var mt = Kl, Gt = /* @__PURE__ */ new WeakMap();
2957
+ function Fa(e) {
2958
+ return /^(?:\d+|\d+\.\d+)$/u.test(e);
2959
+ }
2960
+ function Lr(e, t) {
2961
+ return t.parser === "json" || t.parser === "jsonc" || !Y(e.key) || yt(se(e.key), t).slice(1, -1) !== e.key.value ? !1 : !!(Vl(e.key.value) && !(t.parser === "babel-ts" && e.type === "ClassProperty" || (t.parser === "typescript" || t.parser === "oxc-ts") && e.type === "PropertyDefinition") || Fa(e.key.value) && String(Number(e.key.value)) === e.key.value && e.type !== "ImportAttribute" && (t.parser === "babel" || t.parser === "acorn" || t.parser === "oxc" || t.parser === "espree" || t.parser === "meriyah" || t.parser === "__babel_estree"));
2962
+ }
2963
+ function Hl(e, t) {
2964
+ let { key: n } = e.node;
2965
+ return (n.type === "Identifier" || be(n) && Fa(mt(se(n))) && String(n.value) === mt(se(n)) && !(t.parser === "typescript" || t.parser === "babel-ts" || t.parser === "oxc-ts")) && (t.parser === "json" || t.parser === "jsonc" || t.quoteProps === "consistent" && Gt.get(e.parent));
2966
+ }
2967
+ function Mt(e, t, n) {
2968
+ let { node: r } = e;
2969
+ if (r.computed) return ["[", n("key"), "]"];
2970
+ let { parent: u } = e, { key: a } = r;
2971
+ if (t.quoteProps === "consistent" && !Gt.has(u)) {
2972
+ let s = e.siblings.some((o) => !o.computed && Y(o.key) && !Lr(o, t));
2973
+ Gt.set(u, s);
2974
+ }
2975
+ if (Hl(e, t)) {
2976
+ let s = yt(JSON.stringify(a.type === "Identifier" ? a.name : a.value.toString()), t);
2977
+ return e.call((o) => Fe(o, s, t), "key");
2978
+ }
2979
+ return Lr(r, t) && (t.quoteProps === "as-needed" || t.quoteProps === "consistent" && !Gt.get(u)) ? e.call((s) => Fe(s, /^\d/u.test(a.value) ? mt(a.value) : a.value, t), "key") : n("key");
2980
+ }
2981
+ function Fn(e, t, n) {
2982
+ let { node: r } = e;
2983
+ return r.shorthand ? n("value") : Lt(e, t, n, Mt(e, t, n), ":", "value");
2984
+ }
2985
+ var zl = ({ 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" && tn(n));
2986
+ function Aa(e, t, n, r) {
2987
+ if (zl(e)) return ar(e, t, n);
2988
+ let { node: u } = e, a = !1;
2989
+ if ((u.type === "FunctionDeclaration" || u.type === "FunctionExpression") && r != null && r.expandLastArg) {
2990
+ let { parent: d } = e;
2991
+ L(d) && (de(d).length > 1 || Z(u).every((D) => D.type === "Identifier" && !D.typeAnnotation)) && (a = !0);
2992
+ }
2993
+ let s = [oe(e), u.async ? "async " : "", `function${u.generator ? "*" : ""} `, u.id ? n("id") : ""], o = at(e, t, n, a), i = sn(e, n), l = gt(u, i);
2994
+ return s.push(ze(e, t, n), m([l ? m(o) : o, i]), u.body ? " " : "", n("body")), t.semi && (u.declare || !u.body) && s.push(";"), s;
2995
+ }
2996
+ function Ln(e, t, n) {
2997
+ let { node: r } = e, { kind: u } = r, a = r.value || r, s = [];
2998
+ return !u || u === "init" || u === "method" || u === "constructor" ? a.async && s.push("async ") : ($n.ok(u === "get" || u === "set"), s.push(u, " ")), a.generator && s.push("*"), s.push(Mt(e, t, n), r.optional ? "?" : "", r === a ? ar(e, t, n) : n("value")), s;
2999
+ }
3000
+ function ar(e, t, n) {
3001
+ let { node: r } = e, u = at(e, t, n), a = sn(e, n), s = Nl(r), o = gt(r, a), i = [ze(e, t, n), m([s ? m(u, { shouldBreak: !0 }) : o ? m(u) : u, a])];
3002
+ return r.body ? i.push(" ", n("body")) : i.push(t.semi ? ";" : ""), i;
3003
+ }
3004
+ function Ql(e) {
3005
+ let t = Z(e);
3006
+ return t.length === 1 && !e.typeParameters && !h(e, T.Dangling) && t[0].type === "Identifier" && !t[0].typeAnnotation && !h(t[0]) && !t[0].optional && !e.predicate && !e.returnType;
3007
+ }
3008
+ function ga(e, t) {
3009
+ if (t.arrowParens === "always") return !1;
3010
+ if (t.arrowParens === "avoid") {
3011
+ let { node: n } = e;
3012
+ return Ql(n);
3013
+ }
3014
+ return !1;
3015
+ }
3016
+ function sn(e, t) {
3017
+ let { node: n } = e, r = [z(e, t, "returnType")];
3018
+ return n.predicate && r.push(t("predicate")), r;
3019
+ }
3020
+ function xa(e, t, n) {
3021
+ let { node: r } = e, u = t.semi ? ";" : "", a = [];
3022
+ if (r.argument) {
3023
+ let i = n("argument");
3024
+ ec(t, r.argument) ? i = ["(", A([F, i]), F, ")"] : (ke(r.argument) || t.experimentalTernaries && r.argument.type === "ConditionalExpression" && (r.argument.consequent.type === "ConditionalExpression" || r.argument.alternate.type === "ConditionalExpression")) && (i = m([w("("), A([E, i]), E, w(")")])), a.push(" ", i);
3025
+ }
3026
+ let s = h(r, T.Dangling), o = u && s && h(r, T.Last | T.Line);
3027
+ return o && a.push(u), s && a.push(" ", $(e, t)), o || a.push(u), a;
3028
+ }
3029
+ function Yl(e, t, n) {
3030
+ return ["return", xa(e, t, n)];
3031
+ }
3032
+ function Zl(e, t, n) {
3033
+ return ["throw", xa(e, t, n)];
3034
+ }
3035
+ function ec(e, t) {
3036
+ if (Te(e.originalText, t) || h(t, T.Leading, (n) => ce(e.originalText, q(n), I(n))) && !K(t)) return !0;
3037
+ if (Rn(t)) {
3038
+ let n = t, r;
3039
+ for (; r = Us(n); ) if (n = r, Te(e.originalText, n)) return !0;
3040
+ }
3041
+ return !1;
3042
+ }
3043
+ var An = /* @__PURE__ */ new WeakMap();
3044
+ function ha(e) {
3045
+ return An.has(e) || An.set(e, e.type === "ConditionalExpression" && !te(e, (t) => t.type === "ObjectExpression")), An.get(e);
3046
+ }
3047
+ var tc = (e) => e.type === "SequenceExpression";
3048
+ function nc(e, t, n, r = {}) {
3049
+ let u = [], a, s = [], o = !1, i = !r.expandLastArg && e.node.body.type === "ArrowFunctionExpression", l;
3050
+ (function S() {
3051
+ let { node: b } = e, x = rc(e, t, n, r);
3052
+ if (u.length === 0) u.push(x);
3053
+ else {
3054
+ let { leading: j, trailing: v } = qu(e, t);
3055
+ u.push([j, x]), s.unshift(v);
3056
+ }
3057
+ i && (o || (o = b.returnType && Z(b).length > 0 || b.typeParameters || Z(b).some((j) => j.type !== "Identifier"))), !i || b.body.type !== "ArrowFunctionExpression" ? (a = n("body", r), l = b.body) : e.call(S, "body");
3058
+ })();
3059
+ let d = !Te(t.originalText, l) && (tc(l) || uc(l, a, t) || !o && ha(l)), D = e.key === "callee" && dt(e.parent), c = /* @__PURE__ */ Symbol("arrow-chain"), p = ac(e, r, { signatureDocs: u, shouldBreak: o }), y = !1, f = !1, g = !1;
3060
+ return i && (D || r.assignmentLayout) && (f = !0, g = !h(e.node, T.Leading & T.Line), y = r.assignmentLayout === "chain-tail-arrow-chain" || D && !d), a = sc(e, t, r, { bodyDoc: a, bodyComments: s, functionBody: l, shouldPutBodyOnSameLine: d }), m([m(f ? A([g ? E : "", p]) : p, { shouldBreak: y, id: c }), " =>", i ? un(a, { groupId: c }) : m(a), i && D ? w(E, "", { groupId: c }) : ""]);
3061
+ }
3062
+ function rc(e, t, n, r) {
3063
+ let { node: u } = e, a = [];
3064
+ if (u.async && a.push("async "), ga(e, t)) a.push(n(["params", 0]));
3065
+ else {
3066
+ let o = r.expandLastArg || r.expandFirstArg, i = sn(e, n);
3067
+ if (o) {
3068
+ if (ne(i)) throw new zt();
3069
+ i = m(Sn(i));
3070
+ }
3071
+ a.push(m([at(e, t, n, o, !0), i]));
3072
+ }
3073
+ let s = $(e, t, { filter(o) {
3074
+ let i = Ft(t.originalText, I(o));
3075
+ return i !== !1 && t.originalText.slice(i, i + 2) === "=>";
3076
+ } });
3077
+ return s && a.push(" ", s), a;
3078
+ }
3079
+ function uc(e, t, n) {
3080
+ var r, u;
3081
+ return Q(e) || Ae(e) || e.type === "ArrowFunctionExpression" || e.type === "DoExpression" || e.type === "BlockStatement" || K(e) || ((r = t.label) == null ? void 0 : r.hug) !== !1 && (((u = t.label) == null ? void 0 : u.embed) || uu(e, n.originalText));
3082
+ }
3083
+ function ac(e, t, { signatureDocs: n, shouldBreak: r }) {
3084
+ if (n.length === 1) return n[0];
3085
+ let { parent: u, key: a } = e;
3086
+ return a !== "callee" && dt(u) || ke(u) ? m([n[0], " =>", A([C, N([" =>", C], n.slice(1))])], { shouldBreak: r }) : a === "callee" && dt(u) || t.assignmentLayout ? m(N([" =>", C], n), { shouldBreak: r }) : m(A(N([" =>", C], n)), { shouldBreak: r });
3087
+ }
3088
+ function sc(e, t, n, { bodyDoc: r, bodyComments: u, functionBody: a, shouldPutBodyOnSameLine: s }) {
3089
+ let { node: o, parent: i } = e, l = n.expandLastArg && Ie(t, "all") ? w(",") : "", d = (n.expandLastArg || i.type === "JSXExpressionContainer") && !h(o) ? E : "";
3090
+ return s && ha(a) ? [" ", m([w("", "("), A([E, r]), w("", ")"), l, d]), u] : s ? [" ", r, u] : [A([C, r, u]), l, d];
3091
+ }
3092
+ var oc = (e, t, n) => {
3093
+ if (!(e && t == null)) {
3094
+ if (t.findLast) return t.findLast(n);
3095
+ for (let r = t.length - 1; r >= 0; r--) {
3096
+ let u = t[r];
3097
+ if (n(u, r, t)) return u;
3098
+ }
3099
+ }
3100
+ }, ic = oc;
3101
+ function Mn(e, t, n, r) {
3102
+ let { node: u } = e, a = [], s = ic(!1, u[r], (o) => o.type !== "EmptyStatement");
3103
+ return e.each(({ node: o }) => {
3104
+ o.type !== "EmptyStatement" && (a.push(n()), o !== s && (a.push(F), Ne(o, t) && a.push(F)));
3105
+ }, r), a;
3106
+ }
3107
+ function Ca(e, t, n) {
3108
+ let r = pc(e, t, n), { node: u, parent: a } = e;
3109
+ if (u.type === "Program" && a?.type !== "ModuleExpression") return r ? [r, F] : "";
3110
+ let s = [];
3111
+ if (u.type === "StaticBlock" && s.push("static "), s.push("{"), r) s.push(A([F, r]), F);
3112
+ else {
3113
+ let o = e.grandparent;
3114
+ 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" && !o.finalizer || a.type === "TSModuleDeclaration" || u.type === "StaticBlock" || s.push(F);
3115
+ }
3116
+ return s.push("}"), s;
3117
+ }
3118
+ function pc(e, t, n) {
3119
+ let { node: r } = e, u = J(r.directives), a = r.body.some((i) => i.type !== "EmptyStatement"), s = h(r, T.Dangling);
3120
+ if (!u && !a && !s) return "";
3121
+ let o = [];
3122
+ return u && (o.push(Mn(e, t, n, "directives")), (a || s) && (o.push(F), Ne(X(!1, r.directives, -1), t) && o.push(F))), a && o.push(Mn(e, t, n, "body")), s && o.push($(e, t)), o;
3123
+ }
3124
+ function lc(e) {
3125
+ let t = /* @__PURE__ */ new WeakMap();
3126
+ return function(n) {
3127
+ return t.has(n) || t.set(n, Symbol(e)), t.get(n);
3128
+ };
3129
+ }
3130
+ var Ta = lc, sr = Ta("typeParameters");
3131
+ function cc(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 vt(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 = nn(e.grandparent), s = e.match((i) => !(i[r].length === 1 && Xe(i[r][0])), void 0, (i, l) => l === "typeAnnotation", (i) => i.type === "Identifier", zu);
3140
+ if (u[r].length === 0 || !s && (a || u[r].length === 1 && (u[r][0].type === "NullableTypeAnnotation" || Zu(u[r][0])))) return ["<", N(", ", e.map(n, r)), Dc(e, t), ">"];
3141
+ let o = u.type === "TSTypeParameterInstantiation" ? "" : cc(e, t, r) ? "," : Ie(t) ? w(",") : "";
3142
+ return m(["<", A([E, N([",", C], e.map(n, r))]), o, E, ">"], { id: sr(u) });
3143
+ }
3144
+ function Dc(e, t) {
3145
+ let { node: n } = e;
3146
+ if (!h(n, T.Dangling)) return "";
3147
+ let r = !h(n, T.Line), u = $(e, t, { indent: !r });
3148
+ return r ? u : [u, F];
3149
+ }
3150
+ function Sa(e, t, n) {
3151
+ let { node: r } = e, u = [r.const ? "const " : ""], a = r.type === "TSTypeParameter" ? n("name") : r.name;
3152
+ if (r.variance && u.push(n("variance")), r.in && u.push("in "), r.out && u.push("out "), u.push(a), r.bound && (r.usesExtendsBound && u.push(" extends "), u.push(z(e, n, "bound"))), r.constraint) {
3153
+ let s = /* @__PURE__ */ Symbol("constraint");
3154
+ u.push(" extends", m(A(C), { id: s }), we, un(n("constraint"), { groupId: s }));
3155
+ }
3156
+ return r.default && u.push(" = ", n("default")), m(u);
3157
+ }
3158
+ var ba = _(["ClassProperty", "PropertyDefinition", "ClassPrivateProperty", "ClassAccessorProperty", "AccessorProperty", "TSAbstractPropertyDefinition", "TSAbstractAccessorProperty"]);
3159
+ function Ba(e, t, n) {
3160
+ let { node: r } = e, u = [oe(e), an(e), "class"], a = h(r.id, T.Trailing) || h(r.typeParameters, T.Trailing) || h(r.superClass) || J(r.extends) || J(r.mixins) || J(r.implements), s = [], o = [];
3161
+ if (r.id && s.push(" ", n("id")), s.push(n("typeParameters")), r.superClass) {
3162
+ let d = [mc(e, t, n), n(r.superTypeArguments ? "superTypeArguments" : "superTypeParameters")], D = e.call((c) => ["extends ", Fe(c, d, t)], "superClass");
3163
+ a ? o.push(C, m(D)) : o.push(" ", D);
3164
+ } else o.push(gn(e, t, n, "extends"));
3165
+ o.push(gn(e, t, n, "mixins"), gn(e, t, n, "implements"));
3166
+ let i;
3167
+ if (a) {
3168
+ let d;
3169
+ ka(r) ? d = [...s, A(o)] : d = A([...s, o]), i = va(r), u.push(m(d, { id: i }));
3170
+ } else u.push(...s, ...o);
3171
+ let l = r.body;
3172
+ return a && J(l.body) ? u.push(w(F, " ", { groupId: i })) : u.push(" "), u.push(n("body")), u;
3173
+ }
3174
+ var va = Ta("heritageGroup");
3175
+ function yc(e) {
3176
+ return w(F, "", { groupId: va(e) });
3177
+ }
3178
+ function dc(e) {
3179
+ return ["extends", "mixins", "implements"].reduce((t, n) => t + (Array.isArray(e[n]) ? e[n].length : 0), e.superClass ? 1 : 0) > 1;
3180
+ }
3181
+ function ka(e) {
3182
+ return e.typeParameters && !h(e.typeParameters, T.Trailing | T.Line) && !dc(e);
3183
+ }
3184
+ function gn(e, t, n, r) {
3185
+ let { node: u } = e;
3186
+ if (!J(u[r])) return "";
3187
+ let a = $(e, t, { marker: r });
3188
+ return [ka(u) ? w(" ", C, { groupId: sr(u.typeParameters) }) : C, a, a && F, r, m(A([C, N([",", C], e.map(n, r))]))];
3189
+ }
3190
+ function mc(e, t, n) {
3191
+ let r = n("superClass"), { parent: u } = e;
3192
+ return u.type === "AssignmentExpression" ? m(w(["(", A([E, r]), E, ")"], r)) : r;
3193
+ }
3194
+ function Pa(e, t, n) {
3195
+ let { node: r } = e, u = [];
3196
+ return J(r.decorators) && u.push($u(e, t, n)), u.push(Yt(r)), r.static && u.push("static "), u.push(an(e)), r.override && u.push("override "), u.push(Ln(e, t, n)), u;
3197
+ }
3198
+ function wa(e, t, n) {
3199
+ let { node: r } = e, u = [], a = t.semi ? ";" : "";
3200
+ J(r.decorators) && u.push($u(e, t, n)), u.push(oe(e), Yt(r)), r.static && u.push("static "), u.push(an(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(Mt(e, t, n), re(e), ya(e), z(e, n));
3201
+ let s = r.type === "TSAbstractPropertyDefinition" || r.type === "TSAbstractAccessorProperty";
3202
+ return [Lt(e, t, n, u, " =", s ? void 0 : "value"), a];
3203
+ }
3204
+ function fc(e, t, n) {
3205
+ let { node: r } = e, u = [];
3206
+ return e.each(({ node: a, next: s, isLast: o }) => {
3207
+ u.push(n()), !t.semi && ba(a) && Ec(a, s) && u.push(";"), o || (u.push(F), Ne(a, t) && u.push(F));
3208
+ }, "body"), h(r, T.Dangling) && u.push($(e, t)), ["{", u.length > 0 ? [A([F, u]), F] : "", "}"];
3209
+ }
3210
+ function Ec(e, t) {
3211
+ var n;
3212
+ let { type: r, name: u } = e.key;
3213
+ if (!e.computed && r === "Identifier" && (u === "static" || u === "get" || u === "set") && !e.value && !e.typeAnnotation) return !0;
3214
+ if (!t || t.static || t.accessibility || t.readonly) return !1;
3215
+ if (!t.computed) {
3216
+ let a = (n = t.key) == null ? void 0 : n.name;
3217
+ if (a === "in" || a === "instanceof") return !0;
3218
+ }
3219
+ if (ba(t) && t.variance && !t.static && !t.declare) return !0;
3220
+ switch (t.type) {
3221
+ case "ClassProperty":
3222
+ case "PropertyDefinition":
3223
+ case "TSAbstractPropertyDefinition":
3224
+ return t.computed;
3225
+ case "MethodDefinition":
3226
+ case "TSAbstractMethodDefinition":
3227
+ case "ClassMethod":
3228
+ case "ClassPrivateMethod": {
3229
+ if ((t.value ? t.value.async : t.async) || t.kind === "get" || t.kind === "set") return !1;
3230
+ let a = t.value ? t.value.generator : t.generator;
3231
+ return !!(t.computed || a);
3232
+ }
3233
+ case "TSIndexSignature":
3234
+ return !0;
3235
+ }
3236
+ return !1;
3237
+ }
3238
+ var Fc = _(["TSAsExpression", "TSTypeAssertion", "TSNonNullExpression", "TSInstantiationExpression", "TSSatisfiesExpression"]);
3239
+ function Ia(e) {
3240
+ return Fc(e) ? Ia(e.expression) : e;
3241
+ }
3242
+ var Ac = _(["FunctionExpression", "ArrowFunctionExpression"]);
3243
+ function gc(e) {
3244
+ return e.type === "MemberExpression" || e.type === "OptionalMemberExpression" || e.type === "Identifier" && e.name !== "undefined";
3245
+ }
3246
+ function xc(e, t) {
3247
+ if (t.semi || ja(e, t) || La(e, t)) return !1;
3248
+ let { node: n, key: r, parent: u } = e;
3249
+ 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(() => Na(e, t), "expression"));
3250
+ }
3251
+ function Na(e, t) {
3252
+ let { node: n } = e;
3253
+ switch (n.type) {
3254
+ case "ParenthesizedExpression":
3255
+ case "TypeCastExpression":
3256
+ case "ArrayExpression":
3257
+ case "ArrayPattern":
3258
+ case "TemplateLiteral":
3259
+ case "TemplateElement":
3260
+ case "RegExpLiteral":
3261
+ return !0;
3262
+ case "ArrowFunctionExpression":
3263
+ if (!ga(e, t)) return !0;
3264
+ break;
3265
+ case "UnaryExpression": {
3266
+ let { prefix: r, operator: u } = n;
3267
+ if (r && (u === "+" || u === "-")) return !0;
3268
+ break;
3269
+ }
3270
+ case "BindExpression":
3271
+ if (!n.object) return !0;
3272
+ break;
3273
+ case "Literal":
3274
+ if (n.regex) return !0;
3275
+ break;
3276
+ default:
3277
+ if (K(n)) return !0;
3278
+ }
3279
+ return ut(e, t) ? !0 : Rn(n) ? e.call(() => Na(e, t), ...Yr(n)) : !1;
3280
+ }
3281
+ function ja({ node: e, parent: t }, n) {
3282
+ return (n.parentParser === "markdown" || n.parentParser === "mdx") && e.type === "ExpressionStatement" && K(e.expression) && t.type === "Program" && t.body.length === 1;
3283
+ }
3284
+ function La({ node: e, parent: t }, n) {
3285
+ return (n.parser === "__vue_event_binding" || n.parser === "__vue_ts_event_binding") && e.type === "ExpressionStatement" && t.type === "Program" && t.body.length === 1;
3286
+ }
3287
+ function hc(e, t, n) {
3288
+ let r = [n("expression")];
3289
+ if (La(e, t)) {
3290
+ let u = Ia(e.node.expression);
3291
+ (Ac(u) || gc(u)) && r.push(";");
3292
+ } else ja(e, t) || t.semi && r.push(";");
3293
+ return r;
3294
+ }
3295
+ function Cc(e, t, n) {
3296
+ if (t.__isVueBindings || t.__isVueForBindingLeft) {
3297
+ let r = e.map(n, "program", "body", 0, "params");
3298
+ if (r.length === 1) return r[0];
3299
+ let u = N([",", C], r);
3300
+ return t.__isVueForBindingLeft ? ["(", A([E, m(u)]), E, ")"] : u;
3301
+ }
3302
+ if (t.__isEmbeddedTypescriptGenericParameters) {
3303
+ let r = e.map(n, "program", "body", 0, "typeParameters", "params");
3304
+ return N([",", C], r);
3305
+ }
3306
+ }
3307
+ function Tc(e, t) {
3308
+ let { node: n } = e;
3309
+ switch (n.type) {
3310
+ case "RegExpLiteral":
3311
+ return Mr(n);
3312
+ case "BigIntLiteral":
3313
+ return On(n.extra.raw);
3314
+ case "NumericLiteral":
3315
+ return mt(n.extra.raw);
3316
+ case "StringLiteral":
3317
+ return He(yt(n.extra.raw, t));
3318
+ case "NullLiteral":
3319
+ return "null";
3320
+ case "BooleanLiteral":
3321
+ return String(n.value);
3322
+ case "DirectiveLiteral":
3323
+ return Or(n.extra.raw, t);
3324
+ case "Literal": {
3325
+ if (n.regex) return Mr(n.regex);
3326
+ if (n.bigint) return On(n.raw);
3327
+ let { value: r } = n;
3328
+ return typeof r == "number" ? mt(n.raw) : typeof r == "string" ? Sc(e) ? Or(n.raw, t) : He(yt(n.raw, t)) : String(r);
3329
+ }
3330
+ }
3331
+ }
3332
+ function Sc(e) {
3333
+ if (e.key !== "expression") return;
3334
+ let { parent: t } = e;
3335
+ return t.type === "ExpressionStatement" && typeof t.directive == "string";
3336
+ }
3337
+ function On(e) {
3338
+ return e.toLowerCase();
3339
+ }
3340
+ function Mr({ pattern: e, flags: t }) {
3341
+ return t = [...t].sort().join(""), `/${e}/${t}`;
3342
+ }
3343
+ function Or(e, t) {
3344
+ let n = e.slice(1, -1);
3345
+ if (n.includes('"') || n.includes("'")) return e;
3346
+ let r = t.singleQuote ? "'" : '"';
3347
+ return r + n + r;
3348
+ }
3349
+ function bc(e, t, n) {
3350
+ let r = e.originalText.slice(t, n);
3351
+ for (let u of e[/* @__PURE__ */ Symbol.for("comments")]) {
3352
+ let a = q(u);
3353
+ if (a > n) break;
3354
+ let s = I(u);
3355
+ if (s < t) continue;
3356
+ let o = s - a;
3357
+ r = r.slice(0, a - t) + " ".repeat(o) + r.slice(s - t);
3358
+ }
3359
+ return r;
3360
+ }
3361
+ var or = bc;
3362
+ function Bc(e, t, n) {
3363
+ let { node: r } = e;
3364
+ return ["import", r.phase ? ` ${r.phase}` : "", Ja(r), _a(e, t, n), qa(e, t, n), $a(e, t, n), t.semi ? ";" : ""];
3365
+ }
3366
+ var Ma = (e) => e.type === "ExportDefaultDeclaration" || e.type === "DeclareExportDeclaration" && e.default;
3367
+ function Oa(e, t, n) {
3368
+ let { node: r } = e, u = [al(e, t, n), oe(e), "export", Ma(r) ? " default" : ""], { declaration: a, exported: s } = r;
3369
+ return h(r, T.Dangling) && (u.push(" ", $(e, t)), au(r) && u.push(F)), a ? u.push(" ", n("declaration")) : (u.push(Pc(r)), r.type === "ExportAllDeclaration" || r.type === "DeclareExportAllDeclaration" ? (u.push(" *"), s && u.push(" as ", n("exported"))) : u.push(_a(e, t, n)), u.push(qa(e, t, n), $a(e, t, n))), u.push(kc(r, t)), u;
3370
+ }
3371
+ var vc = _(["ClassDeclaration", "ComponentDeclaration", "FunctionDeclaration", "TSInterfaceDeclaration", "DeclareClass", "DeclareComponent", "DeclareFunction", "DeclareHook", "HookDeclaration", "TSDeclareFunction", "EnumDeclaration"]);
3372
+ function kc(e, t) {
3373
+ return t.semi && (!e.declaration || Ma(e) && !vc(e.declaration)) ? ";" : "";
3374
+ }
3375
+ function ir(e, t = !0) {
3376
+ return e && e !== "value" ? `${t ? " " : ""}${e}${t ? "" : " "}` : "";
3377
+ }
3378
+ function Ja(e, t) {
3379
+ return ir(e.importKind, t);
3380
+ }
3381
+ function Pc(e) {
3382
+ return ir(e.exportKind);
3383
+ }
3384
+ function qa(e, t, n) {
3385
+ let { node: r } = e;
3386
+ if (!r.source) return "";
3387
+ let u = [];
3388
+ return Xa(r, t) && u.push(" from"), u.push(" ", n("source")), u;
3389
+ }
3390
+ function _a(e, t, n) {
3391
+ let { node: r } = e;
3392
+ if (!Xa(r, t)) return "";
3393
+ let u = [" "];
3394
+ if (J(r.specifiers)) {
3395
+ let a = [], s = [];
3396
+ e.each(() => {
3397
+ let o = e.node.type;
3398
+ if (o === "ExportNamespaceSpecifier" || o === "ExportDefaultSpecifier" || o === "ImportNamespaceSpecifier" || o === "ImportDefaultSpecifier") a.push(n());
3399
+ else if (o === "ExportSpecifier" || o === "ImportSpecifier") s.push(n());
3400
+ else throw new At(r, "specifier");
3401
+ }, "specifiers"), u.push(N(", ", a)), s.length > 0 && (a.length > 0 && u.push(", "), s.length > 1 || a.length > 0 || r.specifiers.some((o) => h(o)) ? u.push(m(["{", A([t.bracketSpacing ? C : E, N([",", C], s)]), w(Ie(t) ? "," : ""), t.bracketSpacing ? C : E, "}"])) : u.push(["{", t.bracketSpacing ? " " : "", ...s, t.bracketSpacing ? " " : "", "}"]));
3402
+ } else u.push("{}");
3403
+ return u;
3404
+ }
3405
+ function Xa(e, t) {
3406
+ return e.type !== "ImportDeclaration" || J(e.specifiers) || e.importKind === "type" ? !0 : or(t, q(e), q(e.source)).trimEnd().endsWith("from");
3407
+ }
3408
+ function wc(e, t) {
3409
+ var n, r;
3410
+ if ((n = e.extra) != null && n.deprecatedAssertSyntax) return "assert";
3411
+ let u = or(t, I(e.source), (r = e.attributes) != null && r[0] ? q(e.attributes[0]) : I(e)).trimStart();
3412
+ return u.startsWith("assert") ? "assert" : u.startsWith("with") || J(e.attributes) ? "with" : void 0;
3413
+ }
3414
+ function $a(e, t, n) {
3415
+ let { node: r } = e;
3416
+ if (!r.source) return "";
3417
+ let u = wc(r, t);
3418
+ if (!u) return "";
3419
+ let a = [` ${u} {`];
3420
+ return J(r.attributes) && (t.bracketSpacing && a.push(" "), a.push(N(", ", e.map(n, "attributes"))), t.bracketSpacing && a.push(" ")), a.push("}"), a;
3421
+ }
3422
+ function Ic(e, t, n) {
3423
+ let { node: r } = e, { type: u } = r, a = u.startsWith("Import"), s = a ? "imported" : "local", o = a ? "local" : "exported", i = r[s], l = r[o], d = "", D = "";
3424
+ return u === "ExportNamespaceSpecifier" || u === "ImportNamespaceSpecifier" ? d = "*" : i && (d = n(s)), l && !Nc(r) && (D = n(o)), [ir(u === "ImportSpecifier" ? r.importKind : r.exportKind, !1), d, d && D ? " as " : "", D];
3425
+ }
3426
+ function Nc(e) {
3427
+ if (e.type !== "ImportSpecifier" && e.type !== "ExportSpecifier") return !1;
3428
+ let { local: t, [e.type === "ImportSpecifier" ? "imported" : "exported"]: n } = e;
3429
+ return t.type !== n.type || !Ps(t, n) ? !1 : Y(t) ? t.value === n.value && se(t) === se(n) : t.type === "Identifier" ? t.name === n.name : !1;
3430
+ }
3431
+ function on(e, t, n) {
3432
+ var r;
3433
+ let u = t.semi ? ";" : "", { node: a } = e, s = a.type === "ObjectTypeAnnotation", o = a.type === "TSEnumBody" || a.type === "EnumBooleanBody" || a.type === "EnumNumberBody" || a.type === "EnumBigIntBody" || a.type === "EnumStringBody" || a.type === "EnumSymbolBody", i = [a.type === "TSTypeLiteral" || o ? "members" : a.type === "TSInterfaceBody" ? "body" : "properties"];
3434
+ s && i.push("indexers", "callProperties", "internalSlots");
3435
+ let l = i.flatMap((B) => e.map(({ node: M }) => ({ node: M, printed: n(), loc: q(M) }), B));
3436
+ i.length > 1 && l.sort((B, M) => B.loc - M.loc);
3437
+ let { parent: d, key: D } = e, c = s && D === "body" && (d.type === "InterfaceDeclaration" || d.type === "DeclareInterface" || d.type === "DeclareClass"), p = a.type === "TSInterfaceBody" || o || 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((B) => B.value && (B.value.type === "ObjectPattern" || B.value.type === "ArrayPattern")) || a.type !== "ObjectPattern" && t.objectWrap === "preserve" && l.length > 0 && ce(t.originalText, q(a), l[0].loc), y = c ? ";" : a.type === "TSInterfaceBody" || a.type === "TSTypeLiteral" ? w(u, ";") : ",", f = a.exact ? "{|" : "{", g = a.exact ? "|}" : "}", S = [], b = l.map((B) => {
3438
+ let M = [...S, m(B.printed)];
3439
+ return S = [y, C], (B.node.type === "TSPropertySignature" || B.node.type === "TSMethodSignature" || B.node.type === "TSConstructSignatureDeclaration" || B.node.type === "TSCallSignatureDeclaration") && h(B.node, T.PrettierIgnore) && S.shift(), Ne(B.node, t) && S.push(F), M;
3440
+ });
3441
+ if (a.inexact || a.hasUnknownMembers) {
3442
+ let B;
3443
+ if (h(a, T.Dangling)) {
3444
+ let M = h(a, T.Line);
3445
+ B = [$(e, t), M || pe(t.originalText, I(X(!1, Ke(a), -1))) ? F : C, "..."];
3446
+ } else B = ["..."];
3447
+ b.push([...S, ...B]);
3448
+ }
3449
+ let x = (r = X(!1, l, -1)) == null ? void 0 : r.node, j = !(a.inexact || a.hasUnknownMembers || x && (x.type === "RestElement" || (x.type === "TSPropertySignature" || x.type === "TSCallSignatureDeclaration" || x.type === "TSMethodSignature" || x.type === "TSConstructSignatureDeclaration" || x.type === "TSIndexSignature") && h(x, T.PrettierIgnore)) || e.match(void 0, (B, M) => B.type === "TSImportType" && M === "options")), v;
3450
+ if (b.length === 0) {
3451
+ if (!h(a, T.Dangling)) return [f, g, z(e, n)];
3452
+ v = m([f, $(e, t, { indent: !0 }), E, g, re(e), z(e, n)]);
3453
+ } else v = [c && J(a.properties) ? yc(d) : "", f, A([t.bracketSpacing ? C : E, ...b]), w(j && (y !== "," || Ie(t)) ? y : ""), t.bracketSpacing ? C : E, g, re(e), z(e, n)];
3454
+ return e.match((B) => B.type === "ObjectPattern" && !J(B.decorators), xn) || Xe(a) && (e.match(void 0, (B, M) => M === "typeAnnotation", (B, M) => M === "typeAnnotation", xn) || e.match(void 0, (B, M) => B.type === "FunctionTypeParam" && M === "typeAnnotation", xn)) || !p && e.match((B) => B.type === "ObjectPattern", (B) => B.type === "AssignmentExpression" || B.type === "VariableDeclarator") ? v : m(v, { shouldBreak: p });
3455
+ }
3456
+ function xn(e, t) {
3457
+ return (t === "params" || t === "parameters" || t === "this" || t === "rest") && Yu(e);
3458
+ }
3459
+ function jc(e) {
3460
+ let t = [e];
3461
+ for (let n = 0; n < t.length; n++) {
3462
+ let r = t[n];
3463
+ for (let u of ["test", "consequent", "alternate"]) {
3464
+ let a = r[u];
3465
+ if (K(a)) return !0;
3466
+ a.type === "ConditionalExpression" && t.push(a);
3467
+ }
3468
+ }
3469
+ return !1;
3470
+ }
3471
+ function Lc(e, t, n) {
3472
+ let { node: r } = e, u = r.type === "ConditionalExpression", a = u ? "alternate" : "falseType", { parent: s } = e, o = u ? n("test") : [n("checkType"), " ", "extends", " ", n("extendsType")];
3473
+ return s.type === r.type && s[a] === r ? Be(2, o) : o;
3474
+ }
3475
+ var Mc = /* @__PURE__ */ new Map([["AssignmentExpression", "right"], ["VariableDeclarator", "init"], ["ReturnStatement", "argument"], ["ThrowStatement", "argument"], ["UnaryExpression", "argument"], ["YieldExpression", "argument"], ["AwaitExpression", "argument"]]);
3476
+ function Oc(e) {
3477
+ let { node: t } = e;
3478
+ if (t.type !== "ConditionalExpression") return !1;
3479
+ let n, r = t;
3480
+ for (let u = 0; !n; u++) {
3481
+ let a = e.getParentNode(u);
3482
+ if (a.type === "ChainExpression" && a.expression === r || L(a) && a.callee === r || R(a) && a.object === r || a.type === "TSNonNullExpression" && a.expression === r) {
3483
+ r = a;
3484
+ continue;
3485
+ }
3486
+ a.type === "NewExpression" && a.callee === r || Ce(a) && a.expression === r ? (n = e.getParentNode(u + 1), r = a) : n = a;
3487
+ }
3488
+ return r === t ? !1 : n[Mc.get(n.type)] === r;
3489
+ }
3490
+ function Jc(e, t, n) {
3491
+ let { node: r } = e, u = r.type === "ConditionalExpression", a = u ? "consequent" : "trueType", s = u ? "alternate" : "falseType", o = u ? ["test"] : ["checkType", "extendsType"], i = r[a], l = r[s], d = [], D = !1, { parent: c } = e, p = c.type === r.type && o.some((O) => c[O] === r), y = c.type === r.type && !p, f, g, S = 0;
3492
+ do
3493
+ g = f || r, f = e.getParentNode(S), S++;
3494
+ while (f && f.type === r.type && o.every((O) => f[O] !== g));
3495
+ let b = f || c, x = g;
3496
+ if (u && (K(r[o[0]]) || K(i) || K(l) || jc(x))) {
3497
+ D = !0, y = !0;
3498
+ let O = (U) => [w("("), A([E, U]), E, w(")")], G = (U) => U.type === "NullLiteral" || U.type === "Literal" && U.value === null || U.type === "Identifier" && U.name === "undefined";
3499
+ d.push(" ? ", G(i) ? n(a) : O(n(a)), " : ", l.type === r.type || G(l) ? n(s) : O(n(s)));
3500
+ } else {
3501
+ let O = (U) => t.useTabs ? A(n(U)) : Be(2, n(U)), G = [C, "? ", i.type === r.type ? w("", "(") : "", O(a), i.type === r.type ? w("", ")") : "", C, ": ", O(s)];
3502
+ d.push(c.type !== r.type || c[s] === r || p ? G : t.useTabs ? cu(A(G)) : Be(Math.max(0, t.tabWidth - 2), G));
3503
+ }
3504
+ let j = [a, s, ...o].some((O) => h(r[O], (G) => ye(G) && ce(t.originalText, q(G), I(G)))), v = (O) => c === b ? m(O, { shouldBreak: j }) : j ? [O, ve] : O, B = !D && (R(c) || c.type === "NGPipeExpression" && c.left === r) && !c.computed, M = Oc(e), k = v([Lc(e, t, n), y ? d : A(d), u && B && !M ? E : ""]);
3505
+ return p || M ? m([A([E, k]), E]) : k;
3506
+ }
3507
+ function qc(e, t) {
3508
+ return (R(t) || t.type === "NGPipeExpression" && t.left === e) && !t.computed;
3509
+ }
3510
+ function _c(e, t, n, r) {
3511
+ return [...e.map((u) => Ke(u)), Ke(t), Ke(n)].flat().some((u) => ye(u) && ce(r.originalText, q(u), I(u)));
3512
+ }
3513
+ var Xc = /* @__PURE__ */ new Map([["AssignmentExpression", "right"], ["VariableDeclarator", "init"], ["ReturnStatement", "argument"], ["ThrowStatement", "argument"], ["UnaryExpression", "argument"], ["YieldExpression", "argument"], ["AwaitExpression", "argument"]]);
3514
+ function $c(e) {
3515
+ let { node: t } = e;
3516
+ if (t.type !== "ConditionalExpression") return !1;
3517
+ let n, r = t;
3518
+ for (let u = 0; !n; u++) {
3519
+ let a = e.getParentNode(u);
3520
+ if (a.type === "ChainExpression" && a.expression === r || L(a) && a.callee === r || R(a) && a.object === r || a.type === "TSNonNullExpression" && a.expression === r) {
3521
+ r = a;
3522
+ continue;
3523
+ }
3524
+ a.type === "NewExpression" && a.callee === r || Ce(a) && a.expression === r ? (n = e.getParentNode(u + 1), r = a) : n = a;
3525
+ }
3526
+ return r === t ? !1 : n[Xc.get(n.type)] === r;
3527
+ }
3528
+ var hn = (e) => [w("("), A([E, e]), E, w(")")];
3529
+ function pr(e, t, n, r) {
3530
+ if (!t.experimentalTernaries) return Jc(e, t, n);
3531
+ let { node: u } = e, a = u.type === "ConditionalExpression", s = Re(u), o = a ? "consequent" : "trueType", i = a ? "alternate" : "falseType", l = a ? ["test"] : ["checkType", "extendsType"], d = u[o], D = u[i], c = l.map((me) => u[me]), { parent: p } = e, y = p.type === u.type, f = y && l.some((me) => p[me] === u), g = y && p[i] === u, S = d.type === u.type, b = D.type === u.type, x = b || g, j = t.tabWidth > 2 || t.useTabs, v, B, M = 0;
3532
+ do
3533
+ B = v || u, v = e.getParentNode(M), M++;
3534
+ while (v && v.type === u.type && l.every((me) => v[me] !== B));
3535
+ let k = v || p, O = r && r.assignmentLayout && r.assignmentLayout !== "break-after-operator" && (p.type === "AssignmentExpression" || p.type === "VariableDeclarator" || p.type === "ClassProperty" || p.type === "PropertyDefinition" || p.type === "ClassPrivateProperty" || p.type === "ObjectProperty" || p.type === "Property"), G = (p.type === "ReturnStatement" || p.type === "ThrowStatement") && !(S || b), U = a && k.type === "JSXExpressionContainer" && e.grandparent.type !== "JSXAttribute", Oe = $c(e), P = qc(u, p), V = s && ut(e, t), ue = j ? t.useTabs ? " " : " ".repeat(t.tabWidth - 1) : "", st = _c(c, d, D, t) || S || b, xe = !x && !y && !s && (U ? d.type === "NullLiteral" || d.type === "Literal" && d.value === null : Gn(d, t) && fr(u.test, 3)), lr = x || g || s && !y || y && a && fr(u.test, 1) || xe, cr = [];
3536
+ !S && h(d, T.Dangling) && e.call((me) => {
3537
+ cr.push($(me, t), F);
3538
+ }, "consequent");
3539
+ let xt = [];
3540
+ h(u.test, T.Dangling) && e.call((me) => {
3541
+ xt.push($(me, t));
3542
+ }, "test"), !b && h(D, T.Dangling) && e.call((me) => {
3543
+ xt.push($(me, t));
3544
+ }, "alternate"), h(u, T.Dangling) && xt.push($(e, t));
3545
+ let Dr = /* @__PURE__ */ Symbol("test"), za = /* @__PURE__ */ Symbol("consequent"), Ot = /* @__PURE__ */ Symbol("test-and-consequent"), Qa = a ? [hn(n("test")), u.test.type === "ConditionalExpression" ? ve : ""] : [n("checkType"), " ", "extends", " ", Re(u.extendsType) || u.extendsType.type === "TSMappedType" ? n("extendsType") : m(hn(n("extendsType")))], yr = m([Qa, " ?"], { id: Dr }), Ya = n(o), Jt = A([S || U && (K(d) || y || x) ? F : C, cr, Ya]), Za = lr ? m([yr, x ? Jt : w(Jt, m(Jt, { id: za }), { groupId: Dr })], { id: Ot }) : [yr, Jt], pn = n(i), dr = xe ? w(pn, cu(hn(pn)), { groupId: Ot }) : pn, ht = [Za, xt.length > 0 ? [A([F, xt]), F] : b ? F : xe ? w(C, " ", { groupId: Ot }) : C, ":", b ? " " : j ? lr ? w(ue, w(x || xe ? " " : ue, " "), { groupId: Ot }) : w(ue, " ") : " ", b ? dr : m([A(dr), U && !xe ? E : ""]), P && !Oe ? E : "", st ? ve : ""];
3546
+ return O && !st ? m(A([E, m(ht)])) : O || G ? m(A(ht)) : Oe || s && f ? m([A([E, ht]), V ? E : ""]) : p === k ? m(ht) : ht;
3547
+ }
3548
+ function Rc(e, t, n, r) {
3549
+ let { node: u } = e;
3550
+ if (Wn(u)) return Tc(e, t);
3551
+ let a = t.semi ? ";" : "", s = [];
3552
+ switch (u.type) {
3553
+ case "JsExpressionRoot":
3554
+ return n("node");
3555
+ case "JsonRoot":
3556
+ return [$(e, t), n("node"), F];
3557
+ case "File":
3558
+ return Cc(e, t, n) ?? n("program");
3559
+ case "EmptyStatement":
3560
+ return "";
3561
+ case "ExpressionStatement":
3562
+ return hc(e, t, n);
3563
+ case "ChainExpression":
3564
+ return n("expression");
3565
+ case "ParenthesizedExpression":
3566
+ return !h(u.expression) && (Ae(u.expression) || Q(u.expression)) ? ["(", n("expression"), ")"] : m(["(", A([E, n("expression")]), E, ")"]);
3567
+ case "AssignmentExpression":
3568
+ return El(e, t, n);
3569
+ case "VariableDeclarator":
3570
+ return Fl(e, t, n);
3571
+ case "BinaryExpression":
3572
+ case "LogicalExpression":
3573
+ return Xu(e, t, n);
3574
+ case "AssignmentPattern":
3575
+ return [n("left"), " = ", n("right")];
3576
+ case "OptionalMemberExpression":
3577
+ case "MemberExpression":
3578
+ return dl(e, t, n);
3579
+ case "MetaProperty":
3580
+ return [n("meta"), ".", n("property")];
3581
+ case "BindExpression":
3582
+ return u.object && s.push(n("object")), s.push(m(A([E, da(e, t, n)]))), s;
3583
+ case "Identifier":
3584
+ return [u.name, re(e), ya(e), z(e, n)];
3585
+ case "V8IntrinsicIdentifier":
3586
+ return ["%", u.name];
3587
+ case "SpreadElement":
3588
+ case "SpreadElementPattern":
3589
+ case "SpreadPropertyPattern":
3590
+ case "RestElement":
3591
+ return ma(e, n);
3592
+ case "FunctionDeclaration":
3593
+ case "FunctionExpression":
3594
+ return Aa(e, t, n, r);
3595
+ case "ArrowFunctionExpression":
3596
+ return nc(e, t, n, r);
3597
+ case "YieldExpression":
3598
+ return s.push("yield"), u.delegate && s.push("*"), u.argument && s.push(" ", n("argument")), s;
3599
+ case "AwaitExpression":
3600
+ if (s.push("await"), u.argument) {
3601
+ s.push(" ", n("argument"));
3602
+ let { parent: o } = e;
3603
+ if (L(o) && o.callee === u || R(o) && o.object === u) {
3604
+ s = [A([E, ...s]), E];
3605
+ let i = e.findAncestor((l) => l.type === "AwaitExpression" || l.type === "BlockStatement");
3606
+ if (i?.type !== "AwaitExpression" || !te(i.argument, (l) => l === u)) return m(s);
3607
+ }
3608
+ }
3609
+ return s;
3610
+ case "ExportDefaultDeclaration":
3611
+ case "ExportNamedDeclaration":
3612
+ case "ExportAllDeclaration":
3613
+ return Oa(e, t, n);
3614
+ case "ImportDeclaration":
3615
+ return Bc(e, t, n);
3616
+ case "ImportSpecifier":
3617
+ case "ExportSpecifier":
3618
+ case "ImportNamespaceSpecifier":
3619
+ case "ExportNamespaceSpecifier":
3620
+ case "ImportDefaultSpecifier":
3621
+ case "ExportDefaultSpecifier":
3622
+ return Ic(e, t, n);
3623
+ case "ImportAttribute":
3624
+ return Fn(e, t, n);
3625
+ case "Program":
3626
+ case "BlockStatement":
3627
+ case "StaticBlock":
3628
+ return Ca(e, t, n);
3629
+ case "ClassBody":
3630
+ return fc(e, t, n);
3631
+ case "ThrowStatement":
3632
+ return Zl(e, t, n);
3633
+ case "ReturnStatement":
3634
+ return Yl(e, t, n);
3635
+ case "NewExpression":
3636
+ case "ImportExpression":
3637
+ case "OptionalCallExpression":
3638
+ case "CallExpression":
3639
+ return Ku(e, t, n);
3640
+ case "ObjectExpression":
3641
+ case "ObjectPattern":
3642
+ return on(e, t, n);
3643
+ case "Property":
3644
+ return tn(u) ? Ln(e, t, n) : Fn(e, t, n);
3645
+ case "ObjectProperty":
3646
+ return Fn(e, t, n);
3647
+ case "ObjectMethod":
3648
+ return Ln(e, t, n);
3649
+ case "Decorator":
3650
+ return ["@", n("expression")];
3651
+ case "ArrayExpression":
3652
+ case "ArrayPattern":
3653
+ return ur(e, t, n);
3654
+ case "SequenceExpression": {
3655
+ let { parent: o } = e;
3656
+ if (o.type === "ExpressionStatement" || o.type === "ForStatement") {
3657
+ let l = [];
3658
+ return e.each(({ isFirst: d }) => {
3659
+ d ? l.push(n()) : l.push(",", A([C, n()]));
3660
+ }, "expressions"), m(l);
3661
+ }
3662
+ let i = N([",", C], e.map(n, "expressions"));
3663
+ return (o.type === "ReturnStatement" || o.type === "ThrowStatement") && e.key === "argument" || o.type === "ArrowFunctionExpression" && e.key === "body" ? m(w([A([E, i]), E], i)) : m(i);
3664
+ }
3665
+ case "ThisExpression":
3666
+ return "this";
3667
+ case "Super":
3668
+ return "super";
3669
+ case "Directive":
3670
+ return [n("value"), a];
3671
+ case "UnaryExpression":
3672
+ return s.push(u.operator), /[a-z]$/u.test(u.operator) && s.push(" "), h(u.argument) ? s.push(m(["(", A([E, n("argument")]), E, ")"])) : s.push(n("argument")), s;
3673
+ case "UpdateExpression":
3674
+ return [u.prefix ? u.operator : "", n("argument"), u.prefix ? "" : u.operator];
3675
+ case "ConditionalExpression":
3676
+ return pr(e, t, n, r);
3677
+ case "VariableDeclaration": {
3678
+ let o = e.map(n, "declarations"), i = e.parent, l = i.type === "ForStatement" || i.type === "ForInStatement" || i.type === "ForOfStatement", d = u.declarations.some((c) => c.init), D;
3679
+ return o.length === 1 && !h(u.declarations[0]) ? D = o[0] : o.length > 0 && (D = A(o[0])), s = [oe(e), u.kind, D ? [" ", D] : "", A(o.slice(1).map((c) => [",", d && !l ? F : C, c]))], l && i.body !== u || s.push(a), m(s);
3680
+ }
3681
+ case "WithStatement":
3682
+ return m(["with (", n("object"), ")", qe(u.body, n("body"))]);
3683
+ case "IfStatement": {
3684
+ let o = qe(u.consequent, n("consequent")), i = m(["if (", m([A([E, n("test")]), E]), ")", o]);
3685
+ if (s.push(i), u.alternate) {
3686
+ let l = h(u.consequent, T.Trailing | T.Line) || au(u), d = u.consequent.type === "BlockStatement" && !l;
3687
+ s.push(d ? " " : F), h(u, T.Dangling) && s.push($(e, t), l ? F : " "), s.push("else", m(qe(u.alternate, n("alternate"), u.alternate.type === "IfStatement")));
3688
+ }
3689
+ return s;
3690
+ }
3691
+ case "ForStatement": {
3692
+ let o = qe(u.body, n("body")), i = $(e, t), l = i ? [i, E] : "";
3693
+ return !u.init && !u.test && !u.update ? [l, m(["for (;;)", o])] : [l, m(["for (", m([A([E, n("init"), ";", C, n("test"), ";", C, n("update")]), E]), ")", o])];
3694
+ }
3695
+ case "WhileStatement":
3696
+ return m(["while (", m([A([E, n("test")]), E]), ")", qe(u.body, n("body"))]);
3697
+ case "ForInStatement":
3698
+ return m(["for (", n("left"), " in ", n("right"), ")", qe(u.body, n("body"))]);
3699
+ case "ForOfStatement":
3700
+ return m(["for", u.await ? " await" : "", " (", n("left"), " of ", n("right"), ")", qe(u.body, n("body"))]);
3701
+ case "DoWhileStatement": {
3702
+ let o = qe(u.body, n("body"));
3703
+ return s = [m(["do", o])], u.body.type === "BlockStatement" ? s.push(" ") : s.push(F), s.push("while (", m([A([E, n("test")]), E]), ")", a), s;
3704
+ }
3705
+ case "DoExpression":
3706
+ return [u.async ? "async " : "", "do ", n("body")];
3707
+ case "BreakStatement":
3708
+ case "ContinueStatement":
3709
+ return s.push(u.type === "BreakStatement" ? "break" : "continue"), u.label && s.push(" ", n("label")), s.push(a), s;
3710
+ case "LabeledStatement":
3711
+ return u.body.type === "EmptyStatement" ? [n("label"), ":;"] : [n("label"), ": ", n("body")];
3712
+ case "TryStatement":
3713
+ return ["try ", n("block"), u.handler ? [" ", n("handler")] : "", u.finalizer ? [" finally ", n("finalizer")] : ""];
3714
+ case "CatchClause":
3715
+ if (u.param) {
3716
+ let o = h(u.param, (l) => !ye(l) || l.leading && pe(t.originalText, I(l)) || l.trailing && pe(t.originalText, q(l), { backwards: !0 })), i = n("param");
3717
+ return ["catch ", o ? ["(", A([E, i]), E, ") "] : ["(", i, ") "], n("body")];
3718
+ }
3719
+ return ["catch ", n("body")];
3720
+ case "SwitchStatement":
3721
+ return [m(["switch (", A([E, n("discriminant")]), E, ")"]), " {", u.cases.length > 0 ? A([F, N(F, e.map(({ node: o, isLast: i }) => [n(), !i && Ne(o, t) ? F : ""], "cases"))]) : "", F, "}"];
3722
+ case "SwitchCase": {
3723
+ u.test ? s.push("case ", n("test"), ":") : s.push("default:"), h(u, T.Dangling) && s.push(" ", $(e, t));
3724
+ let o = u.consequent.filter((i) => i.type !== "EmptyStatement");
3725
+ if (o.length > 0) {
3726
+ let i = Mn(e, t, n, "consequent");
3727
+ s.push(o.length === 1 && o[0].type === "BlockStatement" ? [" ", i] : A([F, i]));
3728
+ }
3729
+ return s;
3730
+ }
3731
+ case "DebuggerStatement":
3732
+ return ["debugger", a];
3733
+ case "ClassDeclaration":
3734
+ case "ClassExpression":
3735
+ return Ba(e, t, n);
3736
+ case "ClassMethod":
3737
+ case "ClassPrivateMethod":
3738
+ case "MethodDefinition":
3739
+ return Pa(e, t, n);
3740
+ case "ClassProperty":
3741
+ case "PropertyDefinition":
3742
+ case "ClassPrivateProperty":
3743
+ case "ClassAccessorProperty":
3744
+ case "AccessorProperty":
3745
+ return wa(e, t, n);
3746
+ case "TemplateElement":
3747
+ return He(u.value.raw);
3748
+ case "TemplateLiteral":
3749
+ return wu(e, t, n);
3750
+ case "TaggedTemplateExpression":
3751
+ return Ti(e, t, n);
3752
+ case "PrivateIdentifier":
3753
+ return ["#", u.name];
3754
+ case "PrivateName":
3755
+ return ["#", n("id")];
3756
+ case "TopicReference":
3757
+ return "%";
3758
+ case "ArgumentPlaceholder":
3759
+ return "?";
3760
+ case "ModuleExpression":
3761
+ return ["module ", n("body")];
3762
+ default:
3763
+ throw new At(u, "ESTree");
3764
+ }
3765
+ }
3766
+ function Ra(e, t, n) {
3767
+ let { parent: r, node: u, key: a } = e, s = [n("expression")];
3768
+ switch (u.type) {
3769
+ case "AsConstExpression":
3770
+ s.push(" as const");
3771
+ break;
3772
+ case "AsExpression":
3773
+ case "TSAsExpression":
3774
+ s.push(" as ", n("typeAnnotation"));
3775
+ break;
3776
+ case "SatisfiesExpression":
3777
+ case "TSSatisfiesExpression":
3778
+ s.push(" satisfies ", n("typeAnnotation"));
3779
+ break;
3780
+ }
3781
+ return a === "callee" && L(r) || a === "object" && R(r) ? m([A([E, ...s]), E]) : s;
3782
+ }
3783
+ function Wc(e, t, n) {
3784
+ let { node: r } = e, u = [oe(e), "component"];
3785
+ r.id && u.push(" ", n("id")), u.push(n("typeParameters"));
3786
+ let a = Uc(e, t, n);
3787
+ 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;
3788
+ }
3789
+ function Uc(e, t, n) {
3790
+ let { node: r } = e, u = r.params;
3791
+ if (r.rest && (u = [...u, r.rest]), u.length === 0) return ["(", $(e, t, { filter: (s) => ge(t.originalText, I(s)) === ")" }), ")"];
3792
+ let a = [];
3793
+ return Vc(e, (s, o) => {
3794
+ let i = o === u.length - 1;
3795
+ i && r.rest && a.push("..."), a.push(n()), !i && (a.push(","), Ne(u[o], t) ? a.push(F, F) : a.push(C));
3796
+ }), ["(", A([E, ...a]), w(Ie(t, "all") && !Gc(r, u) ? "," : ""), E, ")"];
3797
+ }
3798
+ function Gc(e, t) {
3799
+ var n;
3800
+ return e.rest || ((n = X(!1, t, -1)) == null ? void 0 : n.type) === "RestElement";
3801
+ }
3802
+ function Vc(e, t) {
3803
+ let { node: n } = e, r = 0, u = (a) => t(a, r++);
3804
+ e.each(u, "params"), n.rest && e.call(u, "rest");
3805
+ }
3806
+ function Kc(e, t, n) {
3807
+ let { node: r } = e;
3808
+ return r.shorthand ? n("local") : [n("name"), " as ", n("local")];
3809
+ }
3810
+ function Hc(e, t, n) {
3811
+ let { node: r } = e, u = [];
3812
+ return r.name && u.push(n("name"), r.optional ? "?: " : ": "), u.push(n("typeAnnotation")), u;
3813
+ }
3814
+ function Wa(e, t, n) {
3815
+ return on(e, t, n);
3816
+ }
3817
+ function Ua(e, t) {
3818
+ let { node: n } = e, r = t("id");
3819
+ n.computed && (r = ["[", r, "]"]);
3820
+ let u = "";
3821
+ return n.initializer && (u = t("initializer")), n.init && (u = t("init")), u ? [r, " = ", u] : r;
3822
+ }
3823
+ function Ga(e, t) {
3824
+ let { node: n } = e;
3825
+ return [oe(e), n.const ? "const " : "", "enum ", t("id"), " ", t("body")];
3826
+ }
3827
+ function zc(e, t, n) {
3828
+ let { node: r } = e, u = ["hook"];
3829
+ r.id && u.push(" ", n("id"));
3830
+ let a = at(e, t, n, !1, !0), s = sn(e, n), o = gt(r, s);
3831
+ return u.push(m([o ? m(a) : a, s]), r.body ? " " : "", n("body")), u;
3832
+ }
3833
+ function Qc(e, t, n) {
3834
+ let { node: r } = e, u = [oe(e), "hook"];
3835
+ return r.id && u.push(" ", n("id")), t.semi && u.push(";"), u;
3836
+ }
3837
+ function Jr(e) {
3838
+ var t;
3839
+ let { node: n } = e;
3840
+ return n.type === "HookTypeAnnotation" && ((t = e.getParentNode(2)) == null ? void 0 : t.type) === "DeclareHook";
3841
+ }
3842
+ function Yc(e, t, n) {
3843
+ let { node: r } = e, u = [];
3844
+ u.push(Jr(e) ? "" : "hook ");
3845
+ let a = at(e, t, n, !1, !0), s = [];
3846
+ return s.push(Jr(e) ? ": " : " => ", n("returnType")), gt(r, s) && (a = m(a)), u.push(a, s), m(u);
3847
+ }
3848
+ function Va(e, t, n) {
3849
+ let { node: r } = e, u = [oe(e), "interface"], a = [], s = [];
3850
+ r.type !== "InterfaceTypeAnnotation" && a.push(" ", n("id"), n("typeParameters"));
3851
+ let o = r.typeParameters && !h(r.typeParameters, T.Trailing | T.Line);
3852
+ return J(r.extends) && s.push(o ? w(" ", C, { groupId: sr(r.typeParameters) }) : C, "extends ", (r.extends.length === 1 ? ao : A)(N([",", C], e.map(n, "extends")))), h(r.id, T.Trailing) || J(r.extends) ? o ? u.push(m([...a, A(s)])) : u.push(m(A([...a, ...s]))) : u.push(...a, ...s), u.push(" ", n("body")), m(u);
3853
+ }
3854
+ function Zc(e) {
3855
+ switch (e) {
3856
+ case null:
3857
+ return "";
3858
+ case "PlusOptional":
3859
+ return "+?";
3860
+ case "MinusOptional":
3861
+ return "-?";
3862
+ case "Optional":
3863
+ return "?";
3864
+ }
3865
+ }
3866
+ function eD(e, t, n) {
3867
+ let { node: r } = e;
3868
+ return m([r.variance ? n("variance") : "", "[", A([n("keyTparam"), " in ", n("sourceType")]), "]", Zc(r.optional), ": ", n("propType")]);
3869
+ }
3870
+ function qr(e, t) {
3871
+ return e === "+" || e === "-" ? e + t : t;
3872
+ }
3873
+ function tD(e, t, n) {
3874
+ let { node: r } = e, u = !1;
3875
+ if (t.objectWrap === "preserve") {
3876
+ let a = q(r), s = or(t, a + 1, q(r.key)), o = a + 1 + s.search(/\S/u);
3877
+ ce(t.originalText, a, o) && (u = !0);
3878
+ }
3879
+ return m(["{", A([t.bracketSpacing ? C : E, h(r, T.Dangling) ? m([$(e, t), F]) : "", m([r.readonly ? [qr(r.readonly, "readonly"), " "] : "", "[", n("key"), " in ", n("constraint"), r.nameType ? [" as ", n("nameType")] : "", "]", r.optional ? qr(r.optional, "?") : "", r.typeAnnotation ? ": " : "", n("typeAnnotation")]), t.semi ? w(";") : ""]), t.bracketSpacing ? C : E, "}"], { shouldBreak: u });
3880
+ }
3881
+ function nD(e, t, n) {
3882
+ let { node: r } = e;
3883
+ if (zr(r)) return r.type.slice(0, -14).toLowerCase();
3884
+ let u = t.semi ? ";" : "";
3885
+ switch (r.type) {
3886
+ case "ComponentDeclaration":
3887
+ case "DeclareComponent":
3888
+ case "ComponentTypeAnnotation":
3889
+ return Wc(e, t, n);
3890
+ case "ComponentParameter":
3891
+ return Kc(e, t, n);
3892
+ case "ComponentTypeParameter":
3893
+ return Hc(e, t, n);
3894
+ case "HookDeclaration":
3895
+ return zc(e, t, n);
3896
+ case "DeclareHook":
3897
+ return Qc(e, t, n);
3898
+ case "HookTypeAnnotation":
3899
+ return Yc(e, t, n);
3900
+ case "DeclareClass":
3901
+ return Ba(e, t, n);
3902
+ case "DeclareFunction":
3903
+ return [oe(e), "function ", n("id"), n("predicate"), u];
3904
+ case "DeclareModule":
3905
+ return ["declare module ", n("id"), " ", n("body")];
3906
+ case "DeclareModuleExports":
3907
+ return ["declare module.exports", z(e, n), u];
3908
+ case "DeclareNamespace":
3909
+ return ["declare namespace ", n("id"), " ", n("body")];
3910
+ case "DeclareVariable":
3911
+ return [oe(e), r.kind ?? "var", " ", n("id"), u];
3912
+ case "DeclareExportDeclaration":
3913
+ case "DeclareExportAllDeclaration":
3914
+ return Oa(e, t, n);
3915
+ case "DeclareOpaqueType":
3916
+ case "OpaqueType":
3917
+ return Ol(e, t, n);
3918
+ case "DeclareTypeAlias":
3919
+ case "TypeAlias":
3920
+ return ea(e, t, n);
3921
+ case "IntersectionTypeAnnotation":
3922
+ return ta(e, t, n);
3923
+ case "UnionTypeAnnotation":
3924
+ return na(e, t, n);
3925
+ case "ConditionalTypeAnnotation":
3926
+ return pr(e, t, n);
3927
+ case "InferTypeAnnotation":
3928
+ return aa(e, t, n);
3929
+ case "FunctionTypeAnnotation":
3930
+ return ra(e, t, n);
3931
+ case "TupleTypeAnnotation":
3932
+ return ur(e, t, n);
3933
+ case "TupleTypeLabeledElement":
3934
+ return oa(e, t, n);
3935
+ case "TupleTypeSpreadElement":
3936
+ return sa(e, t, n);
3937
+ case "GenericTypeAnnotation":
3938
+ return [n("id"), vt(e, t, n, "typeParameters")];
3939
+ case "IndexedAccessType":
3940
+ case "OptionalIndexedAccessType":
3941
+ return ua(e, t, n);
3942
+ case "TypeAnnotation":
3943
+ return pa(e, t, n);
3944
+ case "TypeParameter":
3945
+ return Sa(e, t, n);
3946
+ case "TypeofTypeAnnotation":
3947
+ return ca(e, n);
3948
+ case "ExistsTypeAnnotation":
3949
+ return "*";
3950
+ case "ArrayTypeAnnotation":
3951
+ return la(n);
3952
+ case "DeclareEnum":
3953
+ case "EnumDeclaration":
3954
+ return Ga(e, n);
3955
+ case "EnumBooleanBody":
3956
+ case "EnumNumberBody":
3957
+ case "EnumBigIntBody":
3958
+ case "EnumStringBody":
3959
+ case "EnumSymbolBody":
3960
+ return [r.type === "EnumSymbolBody" || r.explicitType ? `of ${r.type.slice(4, -4).toLowerCase()} ` : "", Wa(e, t, n)];
3961
+ case "EnumBooleanMember":
3962
+ case "EnumNumberMember":
3963
+ case "EnumBigIntMember":
3964
+ case "EnumStringMember":
3965
+ case "EnumDefaultedMember":
3966
+ return Ua(e, n);
3967
+ case "FunctionTypeParam": {
3968
+ let a = r.name ? n("name") : e.parent.this === r ? "this" : "";
3969
+ return [a, re(e), a ? ": " : "", n("typeAnnotation")];
3970
+ }
3971
+ case "DeclareInterface":
3972
+ case "InterfaceDeclaration":
3973
+ case "InterfaceTypeAnnotation":
3974
+ return Va(e, t, n);
3975
+ case "ClassImplements":
3976
+ case "InterfaceExtends":
3977
+ return [n("id"), n("typeParameters")];
3978
+ case "NullableTypeAnnotation":
3979
+ return ["?", n("typeAnnotation")];
3980
+ case "Variance": {
3981
+ let { kind: a } = r;
3982
+ return $n.ok(a === "plus" || a === "minus"), a === "plus" ? "+" : "-";
3983
+ }
3984
+ case "KeyofTypeAnnotation":
3985
+ return ["keyof ", n("argument")];
3986
+ case "ObjectTypeCallProperty":
3987
+ return [r.static ? "static " : "", n("value")];
3988
+ case "ObjectTypeMappedTypeProperty":
3989
+ return eD(e, t, n);
3990
+ case "ObjectTypeIndexer":
3991
+ return [r.static ? "static " : "", r.variance ? n("variance") : "", "[", n("id"), r.id ? ": " : "", n("key"), "]: ", n("value")];
3992
+ case "ObjectTypeProperty": {
3993
+ let a = "";
3994
+ return r.proto ? a = "proto " : r.static && (a = "static "), [a, r.kind !== "init" ? r.kind + " " : "", r.variance ? n("variance") : "", Mt(e, t, n), re(e), tn(r) ? "" : ": ", n("value")];
3995
+ }
3996
+ case "ObjectTypeAnnotation":
3997
+ return on(e, t, n);
3998
+ case "ObjectTypeInternalSlot":
3999
+ return [r.static ? "static " : "", "[[", n("id"), "]]", re(e), r.method ? "" : ": ", n("value")];
4000
+ case "ObjectTypeSpreadProperty":
4001
+ return ma(e, n);
4002
+ case "QualifiedTypeofIdentifier":
4003
+ case "QualifiedTypeIdentifier":
4004
+ return [n("qualification"), ".", n("id")];
4005
+ case "NullLiteralTypeAnnotation":
4006
+ return "null";
4007
+ case "BooleanLiteralTypeAnnotation":
4008
+ return String(r.value);
4009
+ case "StringLiteralTypeAnnotation":
4010
+ return He(yt(se(r), t));
4011
+ case "NumberLiteralTypeAnnotation":
4012
+ return mt(se(r));
4013
+ case "BigIntLiteralTypeAnnotation":
4014
+ return On(se(r));
4015
+ case "TypeCastExpression":
4016
+ return ["(", n("expression"), z(e, n), ")"];
4017
+ case "TypePredicate":
4018
+ return Da(e, n);
4019
+ case "TypeOperator":
4020
+ return [r.operator, " ", n("typeAnnotation")];
4021
+ case "TypeParameterDeclaration":
4022
+ case "TypeParameterInstantiation":
4023
+ return vt(e, t, n, "params");
4024
+ case "InferredPredicate":
4025
+ case "DeclaredPredicate":
4026
+ return [e.key === "predicate" && e.parent.type !== "DeclareFunction" && !e.parent.returnType ? ": " : " ", "%checks", ...r.type === "DeclaredPredicate" ? ["(", n("value"), ")"] : []];
4027
+ case "AsExpression":
4028
+ case "AsConstExpression":
4029
+ case "SatisfiesExpression":
4030
+ return Ra(e, t, n);
4031
+ }
4032
+ }
4033
+ function rD(e, t, n) {
4034
+ var r;
4035
+ let { node: u } = e;
4036
+ if (!u.type.startsWith("TS")) return;
4037
+ if (Qr(u)) return u.type.slice(2, -7).toLowerCase();
4038
+ let a = t.semi ? ";" : "", s = [];
4039
+ switch (u.type) {
4040
+ case "TSThisType":
4041
+ return "this";
4042
+ case "TSTypeAssertion": {
4043
+ let o = !(Q(u.expression) || Ae(u.expression)), i = m(["<", A([E, n("typeAnnotation")]), E, ">"]), l = [w("("), A([E, n("expression")]), E, w(")")];
4044
+ return o ? Ve([[i, n("expression")], [i, m(l, { shouldBreak: !0 })], [i, n("expression")]]) : m([i, n("expression")]);
4045
+ }
4046
+ case "TSDeclareFunction":
4047
+ return Aa(e, t, n);
4048
+ case "TSExportAssignment":
4049
+ return ["export = ", n("expression"), a];
4050
+ case "TSModuleBlock":
4051
+ return Ca(e, t, n);
4052
+ case "TSInterfaceBody":
4053
+ case "TSTypeLiteral":
4054
+ return on(e, t, n);
4055
+ case "TSTypeAliasDeclaration":
4056
+ return ea(e, t, n);
4057
+ case "TSQualifiedName":
4058
+ return [n("left"), ".", n("right")];
4059
+ case "TSAbstractMethodDefinition":
4060
+ case "TSDeclareMethod":
4061
+ return Pa(e, t, n);
4062
+ case "TSAbstractAccessorProperty":
4063
+ case "TSAbstractPropertyDefinition":
4064
+ return wa(e, t, n);
4065
+ case "TSInterfaceHeritage":
4066
+ case "TSClassImplements":
4067
+ case "TSExpressionWithTypeArguments":
4068
+ case "TSInstantiationExpression":
4069
+ return [n("expression"), n(u.typeArguments ? "typeArguments" : "typeParameters")];
4070
+ case "TSTemplateLiteralType":
4071
+ return wu(e, t, n);
4072
+ case "TSNamedTupleMember":
4073
+ return oa(e, t, n);
4074
+ case "TSRestType":
4075
+ return sa(e, t, n);
4076
+ case "TSOptionalType":
4077
+ return [n("typeAnnotation"), "?"];
4078
+ case "TSInterfaceDeclaration":
4079
+ return Va(e, t, n);
4080
+ case "TSTypeParameterDeclaration":
4081
+ case "TSTypeParameterInstantiation":
4082
+ return vt(e, t, n, "params");
4083
+ case "TSTypeParameter":
4084
+ return Sa(e, t, n);
4085
+ case "TSAsExpression":
4086
+ case "TSSatisfiesExpression":
4087
+ return Ra(e, t, n);
4088
+ case "TSArrayType":
4089
+ return la(n);
4090
+ case "TSPropertySignature":
4091
+ return [u.readonly ? "readonly " : "", Mt(e, t, n), re(e), z(e, n)];
4092
+ case "TSParameterProperty":
4093
+ return [Yt(u), u.static ? "static " : "", u.override ? "override " : "", u.readonly ? "readonly " : "", n("parameter")];
4094
+ case "TSTypeQuery":
4095
+ return ca(e, n);
4096
+ case "TSIndexSignature": {
4097
+ let o = u.parameters.length > 1 ? w(Ie(t) ? "," : "") : "", i = m([A([E, N([", ", E], e.map(n, "parameters"))]), o, E]), l = e.parent.type === "ClassBody" && e.key === "body";
4098
+ return [l && u.static ? "static " : "", u.readonly ? "readonly " : "", "[", u.parameters ? i : "", "]", z(e, n), l ? a : ""];
4099
+ }
4100
+ case "TSTypePredicate":
4101
+ return Da(e, n);
4102
+ case "TSNonNullExpression":
4103
+ return [n("expression"), "!"];
4104
+ case "TSImportType":
4105
+ return ["import", Qt(e, t, n), u.qualifier ? [".", n("qualifier")] : "", vt(e, t, n, u.typeArguments ? "typeArguments" : "typeParameters")];
4106
+ case "TSLiteralType":
4107
+ return n("literal");
4108
+ case "TSIndexedAccessType":
4109
+ return ua(e, t, n);
4110
+ case "TSTypeOperator":
4111
+ return [u.operator, " ", n("typeAnnotation")];
4112
+ case "TSMappedType":
4113
+ return tD(e, t, n);
4114
+ case "TSMethodSignature": {
4115
+ let o = u.kind && u.kind !== "method" ? `${u.kind} ` : "";
4116
+ s.push(Yt(u), o, u.computed ? "[" : "", n("key"), u.computed ? "]" : "", re(e));
4117
+ let i = at(e, t, n, !1, !0), l = u.returnType ? "returnType" : "typeAnnotation", d = u[l], D = d ? z(e, n, l) : "", c = gt(u, D);
4118
+ return s.push(c ? m(i) : i), d && s.push(m(D)), m(s);
4119
+ }
4120
+ case "TSNamespaceExportDeclaration":
4121
+ return ["export as namespace ", n("id"), t.semi ? ";" : ""];
4122
+ case "TSEnumDeclaration":
4123
+ return Ga(e, n);
4124
+ case "TSEnumBody":
4125
+ return Wa(e, t, n);
4126
+ case "TSEnumMember":
4127
+ return Ua(e, n);
4128
+ case "TSImportEqualsDeclaration":
4129
+ return [u.isExport ? "export " : "", "import ", Ja(u, !1), n("id"), " = ", n("moduleReference"), t.semi ? ";" : ""];
4130
+ case "TSExternalModuleReference":
4131
+ return ["require(", n("expression"), ")"];
4132
+ case "TSModuleDeclaration": {
4133
+ let { parent: o } = e, i = o.type === "TSModuleDeclaration", l = ((r = u.body) == null ? void 0 : r.type) === "TSModuleDeclaration";
4134
+ return i ? s.push(".") : (s.push(oe(e)), u.kind !== "global" && s.push(u.kind, " ")), s.push(n("id")), l ? s.push(n("body")) : u.body ? s.push(" ", m(n("body"))) : s.push(a), s;
4135
+ }
4136
+ case "TSConditionalType":
4137
+ return pr(e, t, n);
4138
+ case "TSInferType":
4139
+ return aa(e, t, n);
4140
+ case "TSIntersectionType":
4141
+ return ta(e, t, n);
4142
+ case "TSUnionType":
4143
+ return na(e, t, n);
4144
+ case "TSFunctionType":
4145
+ case "TSCallSignatureDeclaration":
4146
+ case "TSConstructorType":
4147
+ case "TSConstructSignatureDeclaration":
4148
+ return ra(e, t, n);
4149
+ case "TSTupleType":
4150
+ return ur(e, t, n);
4151
+ case "TSTypeReference":
4152
+ return [n("typeName"), vt(e, t, n, u.typeArguments ? "typeArguments" : "typeParameters")];
4153
+ case "TSTypeAnnotation":
4154
+ return pa(e, t, n);
4155
+ case "TSEmptyBodyFunctionExpression":
4156
+ return ar(e, t, n);
4157
+ case "TSJSDocAllType":
4158
+ return "*";
4159
+ case "TSJSDocUnknownType":
4160
+ return "?";
4161
+ case "TSJSDocNullableType":
4162
+ return jr(e, n, "?");
4163
+ case "TSJSDocNonNullableType":
4164
+ return jr(e, n, "!");
4165
+ default:
4166
+ throw new At(u, "TypeScript");
4167
+ }
4168
+ }
4169
+ function uD(e, t, n, r) {
4170
+ if (_u(e)) return Ep(e, t);
4171
+ for (let u of [tl, Kp, nD, rD, Rc]) {
4172
+ let a = u(e, t, n, r);
4173
+ if (a !== void 0) return a;
4174
+ }
4175
+ }
4176
+ var aD = _(["ClassMethod", "ClassPrivateMethod", "ClassProperty", "ClassAccessorProperty", "AccessorProperty", "TSAbstractAccessorProperty", "PropertyDefinition", "TSAbstractPropertyDefinition", "ClassPrivateProperty", "MethodDefinition", "TSAbstractMethodDefinition", "TSDeclareMethod"]);
4177
+ function sD(e, t, n, r) {
4178
+ var u;
4179
+ e.isRoot && ((u = t.__onHtmlBindingRoot) == null || u.call(t, e.node, t));
4180
+ let a = uD(e, t, n, r);
4181
+ if (!a) return "";
4182
+ let { node: s } = e;
4183
+ if (aD(s)) return a;
4184
+ let o = J(s.decorators), i = sl(e, t, n), l = s.type === "ClassExpression";
4185
+ if (o && !l) return bn(a, (c) => m([i, c]));
4186
+ let d = ut(e, t), D = xc(e, t);
4187
+ return !i && !d && !D ? a : bn(a, (c) => [D ? ";" : "", d ? "(" : "", d && l && o ? [A([C, i, c]), C] : [i, c], d ? ")" : ""]);
4188
+ }
4189
+ var oD = sD, iD = { avoidAstMutation: !0 }, pD = [{ name: "JSON.stringify", type: "data", extensions: [".importmap"], tmScope: "source.json", aceMode: "json", aliases: ["geojson", "jsonl", "sarif", "topojson"], codemirrorMode: "javascript", codemirrorMimeType: "application/json", filenames: ["package.json", "package-lock.json", "composer.json"], parsers: ["json-stringify"], vscodeLanguageIds: ["json"], linguistLanguageId: 174 }, { name: "JSON", type: "data", extensions: [".json", ".4DForm", ".4DProject", ".avsc", ".geojson", ".gltf", ".har", ".ice", ".JSON-tmLanguage", ".json.example", ".mcmeta", ".sarif", ".tact", ".tfstate", ".tfstate.backup", ".topojson", ".webapp", ".webmanifest", ".yy", ".yyp"], tmScope: "source.json", aceMode: "json", aliases: ["geojson", "jsonl", "sarif", "topojson"], codemirrorMode: "javascript", codemirrorMimeType: "application/json", filenames: [".all-contributorsrc", ".arcconfig", ".auto-changelog", ".c8rc", ".htmlhintrc", ".imgbotconfig", ".nycrc", ".tern-config", ".tern-project", ".watchmanconfig", ".babelrc", ".jscsrc", ".jshintrc", ".jslintrc", ".swcrc"], parsers: ["json"], vscodeLanguageIds: ["json"], linguistLanguageId: 174 }, { name: "JSON with Comments", type: "data", extensions: [".jsonc", ".code-snippets", ".code-workspace", ".sublime-build", ".sublime-color-scheme", ".sublime-commands", ".sublime-completions", ".sublime-keymap", ".sublime-macro", ".sublime-menu", ".sublime-mousemap", ".sublime-project", ".sublime-settings", ".sublime-theme", ".sublime-workspace", ".sublime_metrics", ".sublime_session"], tmScope: "source.json.comments", aceMode: "javascript", aliases: ["jsonc"], codemirrorMode: "javascript", codemirrorMimeType: "text/javascript", group: "JSON", filenames: [], parsers: ["jsonc"], vscodeLanguageIds: ["jsonc"], linguistLanguageId: 423 }, { name: "JSON5", type: "data", extensions: [".json5"], tmScope: "source.js", aceMode: "javascript", codemirrorMode: "javascript", codemirrorMimeType: "application/json", parsers: ["json5"], vscodeLanguageIds: ["json5"], linguistLanguageId: 175 }], Ka = {};
4190
+ Zt(Ka, { getVisitorKeys: () => yD, massageAstNode: () => Ha, print: () => dD });
4191
+ var lD = { JsonRoot: ["node"], ArrayExpression: ["elements"], ObjectExpression: ["properties"], ObjectProperty: ["key", "value"], UnaryExpression: ["argument"], NullLiteral: [], BooleanLiteral: [], StringLiteral: [], NumericLiteral: [], Identifier: [], TemplateLiteral: ["quasis"], TemplateElement: [] }, cD = lD, DD = Kr(cD), yD = DD;
4192
+ function dD(e, t, n) {
4193
+ let { node: r } = e;
4194
+ switch (r.type) {
4195
+ case "JsonRoot":
4196
+ return [n("node"), F];
4197
+ case "ArrayExpression": {
4198
+ if (r.elements.length === 0) return "[]";
4199
+ let u = e.map(() => e.node === null ? "null" : n(), "elements");
4200
+ return ["[", A([F, N([",", F], u)]), F, "]"];
4201
+ }
4202
+ case "ObjectExpression":
4203
+ return r.properties.length === 0 ? "{}" : ["{", A([F, N([",", F], e.map(n, "properties"))]), F, "}"];
4204
+ case "ObjectProperty":
4205
+ return [n("key"), ": ", n("value")];
4206
+ case "UnaryExpression":
4207
+ return [r.operator === "+" ? "" : r.operator, n("argument")];
4208
+ case "NullLiteral":
4209
+ return "null";
4210
+ case "BooleanLiteral":
4211
+ return r.value ? "true" : "false";
4212
+ case "StringLiteral":
4213
+ return JSON.stringify(r.value);
4214
+ case "NumericLiteral":
4215
+ return _r(e) ? JSON.stringify(String(r.value)) : JSON.stringify(r.value);
4216
+ case "Identifier":
4217
+ return _r(e) ? JSON.stringify(r.name) : r.name;
4218
+ case "TemplateLiteral":
4219
+ return n(["quasis", 0]);
4220
+ case "TemplateElement":
4221
+ return JSON.stringify(r.value.cooked);
4222
+ default:
4223
+ throw new At(r, "JSON");
4224
+ }
4225
+ }
4226
+ function _r(e) {
4227
+ return e.key === "key" && e.parent.type === "ObjectProperty";
4228
+ }
4229
+ var mD = /* @__PURE__ */ new Set(["start", "end", "extra", "loc", "comments", "leadingComments", "trailingComments", "innerComments", "errors", "range", "tokens"]);
4230
+ function Ha(e, t) {
4231
+ let { type: n } = e;
4232
+ if (n === "ObjectProperty") {
4233
+ let { key: r } = e;
4234
+ r.type === "Identifier" ? t.key = { type: "StringLiteral", value: r.name } : r.type === "NumericLiteral" && (t.key = { type: "StringLiteral", value: String(r.value) });
4235
+ return;
4236
+ }
4237
+ if (n === "UnaryExpression" && e.operator === "+") return t.argument;
4238
+ if (n === "ArrayExpression") {
4239
+ for (let [r, u] of e.elements.entries()) u === null && t.elements.splice(r, 0, { type: "NullLiteral" });
4240
+ return;
4241
+ }
4242
+ if (n === "TemplateLiteral") return { type: "StringLiteral", value: e.quasis[0].value.cooked };
4243
+ }
4244
+ Ha.ignoredProperties = mD;
4245
+ var Tt = { bracketSpacing: { category: "Common", type: "boolean", default: !0, description: "Print spaces between brackets.", oppositeDescription: "Do not print spaces between brackets." }, objectWrap: { category: "Common", type: "choice", default: "preserve", description: "How to wrap object literals.", choices: [{ value: "preserve", description: "Keep as multi-line, if there is a newline between the opening brace and first property." }, { value: "collapse", description: "Fit to a single line when possible." }] }, singleQuote: { category: "Common", type: "boolean", default: !1, description: "Use single quotes instead of double quotes." }, 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", fD = { 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: Tt.bracketSameLine, objectWrap: Tt.objectWrap, bracketSpacing: Tt.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." }, experimentalOperatorPosition: { category: _e, type: "choice", default: "end", description: "Where to print operators when binary expressions wrap lines.", choices: [{ value: "start", description: "Print operators at the start of new lines." }, { value: "end", description: "Print operators at the end of previous lines." }] }, 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: Tt.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: Tt.singleAttributePerLine }, ED = fD, FD = { estree: Wr, "estree-json": Ka }, AD = [...rs, ...pD], gD = Rr;
4246
+ export {
4247
+ gD as default,
4248
+ AD as languages,
4249
+ ED as options,
4250
+ FD as printers
4251
+ };