UNPKG

@stedi/prettier-plugin-jsonata

Version:
25 lines 75.6 kB
(function(t){function e(){var o=t();return o.default||o}if(typeof exports=="object"&&typeof module=="object")module.exports=e();else if(typeof define=="function"&&define.amd)define(e);else{var f=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof self<"u"?self:this||{};f.prettier=e()}})(function(){"use strict";var Du=Object.create;var ze=Object.defineProperty;var cu=Object.getOwnPropertyDescriptor;var lu=Object.getOwnPropertyNames;var fu=Object.getPrototypeOf,pu=Object.prototype.hasOwnProperty;var Cr=(t,e)=>()=>(t&&(e=t(t=0)),e);var At=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),xe=(t,e)=>{for(var r in e)ze(t,r,{get:e[r],enumerable:!0})},gr=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of lu(e))!pu.call(t,o)&&o!==r&&ze(t,o,{get:()=>e[o],enumerable:!(n=cu(e,o))||n.enumerable});return t};var yr=(t,e,r)=>(r=t!=null?Du(fu(t)):{},gr(e||!t||!t.__esModule?ze(r,"default",{value:t,enumerable:!0}):r,t)),xr=t=>gr(ze({},"__esModule",{value:!0}),t);var du=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)};var Bt=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)};var pe=(t,e,r)=>(du(t,e,"access private method"),r);var Ar=At(kt=>{"use strict";Object.defineProperty(kt,"__esModule",{value:!0});kt.default=_r;function _r(){}_r.prototype={diff:function(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=n.callback;typeof n=="function"&&(o=n,n={}),this.options=n;var u=this;function i(d){return o?(setTimeout(function(){o(void 0,d)},0),!0):d}e=this.castInput(e),r=this.castInput(r),e=this.removeEmpty(this.tokenize(e)),r=this.removeEmpty(this.tokenize(r));var s=r.length,a=e.length,D=1,c=s+a;n.maxEditLength&&(c=Math.min(c,n.maxEditLength));var p=[{newPos:-1,components:[]}],l=this.extractCommon(p[0],r,e,0);if(p[0].newPos+1>=s&&l+1>=a)return i([{value:this.join(r),count:r.length}]);function F(){for(var d=-1*D;d<=D;d+=2){var m=void 0,h=p[d-1],E=p[d+1],g=(E?E.newPos:0)-d;h&&(p[d-1]=void 0);var C=h&&h.newPos+1<s,_=E&&0<=g&&g<a;if(!C&&!_){p[d]=void 0;continue}if(!C||_&&h.newPos<E.newPos?(m=hu(E),u.pushComponent(m.components,void 0,!0)):(m=h,m.newPos++,u.pushComponent(m.components,!0,void 0)),g=u.extractCommon(m,r,e,d),m.newPos+1>=s&&g+1>=a)return i(mu(u,m.components,r,e,u.useLongestToken));p[d]=m}D++}if(o)(function d(){setTimeout(function(){if(D>c)return o();F()||d()},0)})();else for(;D<=c;){var f=F();if(f)return f}},pushComponent:function(e,r,n){var o=e[e.length-1];o&&o.added===r&&o.removed===n?e[e.length-1]={count:o.count+1,added:r,removed:n}:e.push({count:1,added:r,removed:n})},extractCommon:function(e,r,n,o){for(var u=r.length,i=n.length,s=e.newPos,a=s-o,D=0;s+1<u&&a+1<i&&this.equals(r[s+1],n[a+1]);)s++,a++,D++;return D&&e.components.push({count:D}),e.newPos=s,a},equals:function(e,r){return this.options.comparator?this.options.comparator(e,r):e===r||this.options.ignoreCase&&e.toLowerCase()===r.toLowerCase()},removeEmpty:function(e){for(var r=[],n=0;n<e.length;n++)e[n]&&r.push(e[n]);return r},castInput:function(e){return e},tokenize:function(e){return e.split("")},join:function(e){return e.join("")}};function mu(t,e,r,n,o){for(var u=0,i=e.length,s=0,a=0;u<i;u++){var D=e[u];if(D.removed){if(D.value=t.join(n.slice(a,a+D.count)),a+=D.count,u&&e[u-1].added){var p=e[u-1];e[u-1]=e[u],e[u]=p}}else{if(!D.added&&o){var c=r.slice(s,s+D.count);c=c.map(function(F,f){var d=n[a+f];return d.length>F.length?d:F}),D.value=t.join(c)}else D.value=t.join(r.slice(s,s+D.count));s+=D.count,D.added||(a+=D.count)}}var l=e[i-1];return i>1&&typeof l.value=="string"&&(l.added||l.removed)&&t.equals("",l.value)&&(e[i-2].value+=l.value,e.pop()),e}function hu(t){return{newPos:t.newPos,components:t.components.slice(0)}}});var Br=At(Ae=>{"use strict";Object.defineProperty(Ae,"__esModule",{value:!0});Ae.diffArrays=gu;Ae.arrayDiff=void 0;var Eu=Cu(Ar());function Cu(t){return t&&t.__esModule?t:{default:t}}var _e=new Eu.default;Ae.arrayDiff=_e;_e.tokenize=function(t){return t.slice()};_e.join=_e.removeEmpty=function(t){return t};function gu(t,e,r){return _e.diff(t,e,r)}});var j,S,Re=Cr(()=>{j=t=>t;j.grey=j;j.red=j;j.bold=j;j.yellow=j;j.blue=j;j.default=j;S=j});var _n={};xe(_n,{getChalk:()=>eo,shouldHighlight:()=>Qu});var Qu,eo,An=Cr(()=>{Re();Qu=()=>!1,eo=()=>S});var wn=At(mt=>{"use strict";Object.defineProperty(mt,"__esModule",{value:!0});mt.codeFrameColumns=bn;mt.default=no;var Gt=(An(),xr(_n)),Bn=!1;function to(t){return{gutter:t.grey,marker:t.red.bold,message:t.red.bold}}var kn=/\r\n|[\n\r\u2028\u2029]/;function ro(t,e,r){let n=Object.assign({column:0,line:-1},t.start),o=Object.assign({},n,t.end),{linesAbove:u=2,linesBelow:i=3}=r||{},s=n.line,a=n.column,D=o.line,c=o.column,p=Math.max(s-(u+1),0),l=Math.min(e.length,D+i);s===-1&&(p=0),D===-1&&(l=e.length);let F=D-s,f={};if(F)for(let d=0;d<=F;d++){let m=d+s;if(!a)f[m]=!0;else if(d===0){let h=e[m-1].length;f[m]=[a,h-a+1]}else if(d===F)f[m]=[0,c];else{let h=e[m-d].length;f[m]=[0,h]}}else a===c?a?f[s]=[a,0]:f[s]=!0:f[s]=[a,c-a];return{start:p,end:l,markerLines:f}}function bn(t,e,r={}){let n=(r.highlightCode||r.forceColor)&&(0,Gt.shouldHighlight)(r),o=(0,Gt.getChalk)(r),u=to(o),i=(d,m)=>n?d(m):m,s=t.split(kn),{start:a,end:D,markerLines:c}=ro(e,s,r),p=e.start&&typeof e.start.column=="number",l=String(D).length,f=(n?(0,Gt.default)(t,r):t).split(kn,D).slice(a,D).map((d,m)=>{let h=a+1+m,g=` ${` ${h}`.slice(-l)} |`,C=c[h],_=!c[h+1];if(C){let ee="";if(Array.isArray(C)){let U=d.slice(0,Math.max(C[0]-1,0)).replace(/[^\t]/g," "),te=C[1]||1;ee=[` `,i(u.gutter,g.replace(/\d/g," "))," ",U,i(u.marker,"^").repeat(te)].join(""),_&&r.message&&(ee+=" "+i(u.message,r.message))}return[i(u.marker,">"),i(u.gutter,g),d.length>0?` ${d}`:"",ee].join("")}else return` ${i(u.gutter,g)}${d.length>0?` ${d}`:""}`}).join(` `);return r.message&&!p&&(f=`${" ".repeat(l+1)}${r.message} ${f}`),n?o.reset(f):f}function no(t,e,r,n={}){if(!Bn){Bn=!0;let u="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";{let i=new Error(u);i.name="DeprecationWarning",console.warn(new Error(u))}}return r=Math.max(r,0),bn(t,{start:{column:r,line:e}},n)}});var ti={};xe(ti,{__debug:()=>Xo,check:()=>qo,doc:()=>hr,format:()=>au,formatWithCursor:()=>su,getSupportInfo:()=>Jo,printAstToDocSync:()=>Qo,printDocToStringSync:()=>Zo,printToDocSync:()=>ei,util:()=>mr,version:()=>iu});var dr={};xe(dr,{formatAst:()=>cr,formatDoc:()=>lr,formatWithCursor:()=>xt,parse:()=>Dr,printAstToDoc:()=>Ce,printAstToDocSync:()=>or,printDocToString:()=>pr,printDocToStringSync:()=>Oo,printToDoc:()=>fr,printToDocSync:()=>wo});var Fu=(t,e,r,n)=>{if(!(t&&e==null))return e.replaceAll?e.replaceAll(r,n):r.global?e.replace(r,n):e.split(r).join(n)},re=Fu;var Jn=yr(Br(),1);var W="string",$="array",z="cursor",N="indent",v="align",P="trim",A="group",k="fill",B="if-break",L="indent-if-break",I="line-suffix",R="line-suffix-boundary",x="line",O="label",b="break-parent",Ge=new Set([z,N,v,P,A,k,B,L,I,R,x,O,b]);function yu(t){if(typeof t=="string")return W;if(Array.isArray(t))return $;if(!t)return;let{type:e}=t;if(Ge.has(e))return e}var G=yu;var xu=t=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(t);function _u(t){let e=t===null?"null":typeof t;if(e!=="string"&&e!=="object")return`Unexpected doc '${e}', Expected it to be 'string' or 'object'.`;if(G(t))throw new Error("doc is valid.");let r=Object.prototype.toString.call(t);if(r!=="[object Object]")return`Unexpected doc '${r}'.`;let n=xu([...Ge].map(o=>`'${o}'`));return`Unexpected doc.type '${t.type}'. Expected it to be ${n}.`}var bt=class extends Error{name="InvalidDocError";constructor(e){super(_u(e)),this.doc=e}},X=bt;var kr={};function Au(t,e,r,n){let o=[t];for(;o.length>0;){let u=o.pop();if(u===kr){r(o.pop());continue}r&&o.push(u,kr);let i=G(u);if(!i)throw new X(u);if((e==null?void 0:e(u))!==!1)switch(i){case $:case k:{let s=i===$?u:u.parts;for(let a=s.length,D=a-1;D>=0;--D)o.push(s[D]);break}case B:o.push(u.flatContents,u.breakContents);break;case A:if(n&&u.expandedStates)for(let s=u.expandedStates.length,a=s-1;a>=0;--a)o.push(u.expandedStates[a]);else o.push(u.contents);break;case v:case N:case L:case O:case I:o.push(u.contents);break;case W:case z:case P:case R:case x:case b:break;default:throw new X(u)}}}var Be=Au;var br=()=>{},K=br,Ke=br;function ae(t){return K(t),{type:N,contents:t}}function se(t,e){return K(e),{type:v,contents:e,n:t}}function wt(t,e={}){return K(t),Ke(e.expandedStates,!0),{type:A,id:e.id,contents:t,break:!!e.shouldBreak,expandedStates:e.expandedStates}}function wr(t){return se(Number.NEGATIVE_INFINITY,t)}function Or(t){return se({type:"root"},t)}function Sr(t){return se(-1,t)}function Tr(t,e){return wt(t[0],{...e,expandedStates:t})}function He(t){return Ke(t),{type:k,parts:t}}function Nr(t,e="",r={}){return K(t),e!==""&&K(e),{type:B,breakContents:t,flatContents:e,groupId:r.groupId}}function vr(t,e){return K(t),{type:L,contents:t,groupId:e.groupId,negate:e.negate}}function ke(t){return K(t),{type:I,contents:t}}var Pr={type:R},de={type:b},Lr={type:P},be={type:x,hard:!0},Ot={type:x,hard:!0,literal:!0},qe={type:x},Ir={type:x,soft:!0},H=[be,de],Je=[Ot,de],we={type:z};function Oe(t,e){K(t),Ke(e);let r=[];for(let n=0;n<e.length;n++)n!==0&&r.push(t),r.push(e[n]);return r}function Xe(t,e,r){K(t);let n=t;if(e>0){for(let o=0;o<Math.floor(e/r);++o)n=ae(n);n=se(e%r,n),n=se(Number.NEGATIVE_INFINITY,n)}return n}function Rr(t,e){return K(e),t?{type:O,label:t,contents:e}:e}var Bu=(t,e,r)=>{if(!(t&&e==null))return Array.isArray(e)||typeof e=="string"?e[r<0?e.length+r:r]:e.at(r)},y=Bu;function Yr(t){let e=t.indexOf("\r");return e>=0?t.charAt(e+1)===` `?"crlf":"cr":"lf"}function Se(t){switch(t){case"cr":return"\r";case"crlf":return`\r `;default:return` `}}function St(t,e){let r;switch(e){case` `:r=/\n/g;break;case"\r":r=/\r/g;break;case`\r `:r=/\r\n/g;break;default:throw new Error(`Unexpected "eol" ${JSON.stringify(e)}.`)}let n=t.match(r);return n?n.length:0}function jr(t){return re(!1,t,/\r\n?/g,` `)}var Vr=()=>/[#*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\u26D3\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC3\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\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(?:[\uDC08\uDC26](?:\u200D\u2B1B)?|[\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-\uDEB6](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC15(?:\u200D\uD83E\uDDBA)?|\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-\uDDB3\uDDBC\uDDBD])|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD])|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\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-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1))|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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-\uDDB3\uDDBC\uDDBD]|\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;var $r={eastAsianWidth(t){var e=t.charCodeAt(0),r=t.length==2?t.charCodeAt(1):0,n=e;return 55296<=e&&e<=56319&&56320<=r&&r<=57343&&(e&=1023,r&=1023,n=e<<10|r,n+=65536),n==12288||65281<=n&&n<=65376||65504<=n&&n<=65510?"F":4352<=n&&n<=4447||4515<=n&&n<=4519||4602<=n&&n<=4607||9001<=n&&n<=9002||11904<=n&&n<=11929||11931<=n&&n<=12019||12032<=n&&n<=12245||12272<=n&&n<=12283||12289<=n&&n<=12350||12353<=n&&n<=12438||12441<=n&&n<=12543||12549<=n&&n<=12589||12593<=n&&n<=12686||12688<=n&&n<=12730||12736<=n&&n<=12771||12784<=n&&n<=12830||12832<=n&&n<=12871||12880<=n&&n<=13054||13056<=n&&n<=19903||19968<=n&&n<=42124||42128<=n&&n<=42182||43360<=n&&n<=43388||44032<=n&&n<=55203||55216<=n&&n<=55238||55243<=n&&n<=55291||63744<=n&&n<=64255||65040<=n&&n<=65049||65072<=n&&n<=65106||65108<=n&&n<=65126||65128<=n&&n<=65131||110592<=n&&n<=110593||127488<=n&&n<=127490||127504<=n&&n<=127546||127552<=n&&n<=127560||127568<=n&&n<=127569||131072<=n&&n<=194367||177984<=n&&n<=196605||196608<=n&&n<=262141?"W":"N"}};var ku=/[^\x20-\x7F]/;function bu(t){if(!t)return 0;if(!ku.test(t))return t.length;t=t.replace(Vr()," ");let e=0;for(let r of t){let n=r.codePointAt(0);if(n<=31||n>=127&&n<=159||n>=768&&n<=879)continue;let o=$r.eastAsianWidth(r);e+=o==="F"||o==="W"?2:1}return e}var Te=bu;var Wr=t=>{if(Array.isArray(t))return t;if(t.type!==k)throw new Error(`Expect doc to be 'array' or '${k}'.`);return t.parts};function ve(t,e){if(typeof t=="string")return e(t);let r=new Map;return n(t);function n(u){if(r.has(u))return r.get(u);let i=o(u);return r.set(u,i),i}function o(u){switch(G(u)){case $:return e(u.map(n));case k:return e({...u,parts:u.parts.map(n)});case B:return e({...u,breakContents:n(u.breakContents),flatContents:n(u.flatContents)});case A:{let{expandedStates:i,contents:s}=u;return i?(i=i.map(n),s=i[0]):s=n(s),e({...u,contents:s,expandedStates:i})}case v:case N:case L:case O:case I:return e({...u,contents:n(u.contents)});case W:case z:case P:case R:case x:case b:return e(u);default:throw new X(u)}}}function Ze(t,e,r){let n=r,o=!1;function u(i){if(o)return!1;let s=e(i);s!==void 0&&(o=!0,n=s)}return Be(t,u),n}function wu(t){if(t.type===A&&t.break||t.type===x&&t.hard||t.type===b)return!0}function zr(t){return Ze(t,wu,!1)}function Mr(t){if(t.length>0){let e=y(!1,t,-1);!e.expandedStates&&!e.break&&(e.break="propagated")}return null}function Gr(t){let e=new Set,r=[];function n(u){if(u.type===b&&Mr(r),u.type===A){if(r.push(u),e.has(u))return!1;e.add(u)}}function o(u){u.type===A&&r.pop().break&&Mr(r)}Be(t,n,o,!0)}function Ou(t){return t.type===x&&!t.hard?t.soft?"":" ":t.type===B?t.flatContents:t}function Kr(t){return ve(t,Ou)}function Ur(t){for(t=[...t];t.length>=2&&y(!1,t,-2).type===x&&y(!1,t,-1).type===b;)t.length-=2;if(t.length>0){let e=Ne(y(!1,t,-1));t[t.length-1]=e}return t}function Ne(t){switch(G(t)){case v:case N:case L:case A:case I:case O:{let e=Ne(t.contents);return{...t,contents:e}}case B:return{...t,breakContents:Ne(t.breakContents),flatContents:Ne(t.flatContents)};case k:return{...t,parts:Ur(t.parts)};case $:return Ur(t);case W:return t.replace(/[\n\r]*$/,"");case z:case P:case R:case x:case b:break;default:throw new X(t)}return t}function Qe(t){return Ne(Tu(t))}function Su(t){switch(G(t)){case k:if(t.parts.every(e=>e===""))return"";break;case A:if(!t.contents&&!t.id&&!t.break&&!t.expandedStates)return"";if(t.contents.type===A&&t.contents.id===t.id&&t.contents.break===t.break&&t.contents.expandedStates===t.expandedStates)return t.contents;break;case v:case N:case L:case I:if(!t.contents)return"";break;case B:if(!t.flatContents&&!t.breakContents)return"";break;case $:{let e=[];for(let r of t){if(!r)continue;let[n,...o]=Array.isArray(r)?r:[r];typeof n=="string"&&typeof y(!1,e,-1)=="string"?e[e.length-1]+=n:e.push(n),e.push(...o)}return e.length===0?"":e.length===1?e[0]:e}case W:case z:case P:case R:case x:case O:case b:break;default:throw new X(t)}return t}function Tu(t){return ve(t,e=>Su(e))}function Hr(t,e=Je){return ve(t,r=>typeof r=="string"?Oe(e,r.split(` `)):r)}function Nu(t){if(t.type===x)return!0}function qr(t){return Ze(t,Nu,!1)}function et(t,e){return t.type===O?{...t,contents:e(t.contents)}:e(t)}var Y=Symbol("MODE_BREAK"),q=Symbol("MODE_FLAT"),Pe=Symbol("cursor");function Jr(){return{value:"",length:0,queue:[]}}function vu(t,e){return Tt(t,{type:"indent"},e)}function Pu(t,e,r){return e===Number.NEGATIVE_INFINITY?t.root||Jr():e<0?Tt(t,{type:"dedent"},r):e?e.type==="root"?{...t,root:t}:Tt(t,{type:typeof e=="string"?"stringAlign":"numberAlign",n:e},r):t}function Tt(t,e,r){let n=e.type==="dedent"?t.queue.slice(0,-1):[...t.queue,e],o="",u=0,i=0,s=0;for(let f of n)switch(f.type){case"indent":c(),r.useTabs?a(1):D(r.tabWidth);break;case"stringAlign":c(),o+=f.n,u+=f.n.length;break;case"numberAlign":i+=1,s+=f.n;break;default:throw new Error(`Unexpected type '${f.type}'`)}return l(),{...t,value:o,length:u,queue:n};function a(f){o+=" ".repeat(f),u+=r.tabWidth*f}function D(f){o+=" ".repeat(f),u+=f}function c(){r.useTabs?p():l()}function p(){i>0&&a(i),F()}function l(){s>0&&D(s),F()}function F(){i=0,s=0}}function Nt(t){let e=0,r=0,n=t.length;e:for(;n--;){let o=t[n];if(o===Pe){r++;continue}for(let u=o.length-1;u>=0;u--){let i=o[u];if(i===" "||i===" ")e++;else{t[n]=o.slice(0,u+1);break e}}}if(e>0||r>0)for(t.length=n+1;r-- >0;)t.push(Pe);return e}function tt(t,e,r,n,o,u){if(r===Number.POSITIVE_INFINITY)return!0;let i=e.length,s=[t],a=[];for(;r>=0;){if(s.length===0){if(i===0)return!0;s.push(e[--i]);continue}let{mode:D,doc:c}=s.pop();switch(G(c)){case W:a.push(c),r-=Te(c);break;case $:case k:{let p=Wr(c);for(let l=p.length-1;l>=0;l--)s.push({mode:D,doc:p[l]});break}case N:case v:case L:case O:s.push({mode:D,doc:c.contents});break;case P:r+=Nt(a);break;case A:{if(u&&c.break)return!1;let p=c.break?Y:D,l=c.expandedStates&&p===Y?y(!1,c.expandedStates,-1):c.contents;s.push({mode:p,doc:l});break}case B:{let l=(c.groupId?o[c.groupId]||q:D)===Y?c.breakContents:c.flatContents;l&&s.push({mode:D,doc:l});break}case x:if(D===Y||c.hard)return!0;c.soft||(a.push(" "),r--);break;case I:n=!0;break;case R:if(n)return!1;break}}return!1}function De(t,e){let r={},n=e.printWidth,o=Se(e.endOfLine),u=0,i=[{ind:Jr(),mode:Y,doc:t}],s=[],a=!1,D=[],c=0;for(Gr(t);i.length>0;){let{ind:l,mode:F,doc:f}=i.pop();switch(G(f)){case W:{let d=o!==` `?re(!1,f,` `,o):f;s.push(d),i.length>0&&(u+=Te(d));break}case $:for(let d=f.length-1;d>=0;d--)i.push({ind:l,mode:F,doc:f[d]});break;case z:if(c>=2)throw new Error("There are too many 'cursor' in doc.");s.push(Pe),c++;break;case N:i.push({ind:vu(l,e),mode:F,doc:f.contents});break;case v:i.push({ind:Pu(l,f.n,e),mode:F,doc:f.contents});break;case P:u-=Nt(s);break;case A:switch(F){case q:if(!a){i.push({ind:l,mode:f.break?Y:q,doc:f.contents});break}case Y:{a=!1;let d={ind:l,mode:q,doc:f.contents},m=n-u,h=D.length>0;if(!f.break&&tt(d,i,m,h,r))i.push(d);else if(f.expandedStates){let E=y(!1,f.expandedStates,-1);if(f.break){i.push({ind:l,mode:Y,doc:E});break}else for(let g=1;g<f.expandedStates.length+1;g++)if(g>=f.expandedStates.length){i.push({ind:l,mode:Y,doc:E});break}else{let C=f.expandedStates[g],_={ind:l,mode:q,doc:C};if(tt(_,i,m,h,r)){i.push(_);break}}}else i.push({ind:l,mode:Y,doc:f.contents});break}}f.id&&(r[f.id]=y(!1,i,-1).mode);break;case k:{let d=n-u,{parts:m}=f;if(m.length===0)break;let[h,E]=m,g={ind:l,mode:q,doc:h},C={ind:l,mode:Y,doc:h},_=tt(g,[],d,D.length>0,r,!0);if(m.length===1){_?i.push(g):i.push(C);break}let ee={ind:l,mode:q,doc:E},U={ind:l,mode:Y,doc:E};if(m.length===2){_?i.push(ee,g):i.push(U,C);break}m.splice(0,2);let te={ind:l,mode:F,doc:He(m)},Er=m[0];tt({ind:l,mode:q,doc:[h,E,Er]},[],d,D.length>0,r,!0)?i.push(te,ee,g):_?i.push(te,U,g):i.push(te,U,C);break}case B:case L:{let d=f.groupId?r[f.groupId]:F;if(d===Y){let m=f.type===B?f.breakContents:f.negate?f.contents:ae(f.contents);m&&i.push({ind:l,mode:F,doc:m})}if(d===q){let m=f.type===B?f.flatContents:f.negate?ae(f.contents):f.contents;m&&i.push({ind:l,mode:F,doc:m})}break}case I:D.push({ind:l,mode:F,doc:f.contents});break;case R:D.length>0&&i.push({ind:l,mode:F,doc:be});break;case x:switch(F){case q:if(f.hard)a=!0;else{f.soft||(s.push(" "),u+=1);break}case Y:if(D.length>0){i.push({ind:l,mode:F,doc:f},...D.reverse()),D.length=0;break}f.literal?l.root?(s.push(o,l.root.value),u=l.root.length):(s.push(o),u=0):(u-=Nt(s),s.push(o+l.value),u=l.length);break}break;case O:i.push({ind:l,mode:F,doc:f.contents});break;case b:break;default:throw new X(f)}i.length===0&&D.length>0&&(i.push(...D.reverse()),D.length=0)}let p=s.indexOf(Pe);if(p!==-1){let l=s.indexOf(Pe,p+1),F=s.slice(0,p).join(""),f=s.slice(p+1,l).join(""),d=s.slice(l+1).join("");return{formatted:F+f+d,cursorNodeStart:F.length,cursorNodeText:f}}return{formatted:s.join("")}}function Z(t){var e;if(!t)return"";if(Array.isArray(t)){let r=[];for(let n of t)if(Array.isArray(n))r.push(...Z(n));else{let o=Z(n);o!==""&&r.push(o)}return r}return t.type===B?{...t,breakContents:Z(t.breakContents),flatContents:Z(t.flatContents)}:t.type===A?{...t,contents:Z(t.contents),expandedStates:(e=t.expandedStates)==null?void 0:e.map(Z)}:t.type===k?{type:"fill",parts:t.parts.map(Z)}:t.contents?{...t,contents:Z(t.contents)}:t}function Xr(t){let e=Object.create(null),r=new Set;return n(Z(t));function n(u,i,s){var a,D;if(typeof u=="string")return JSON.stringify(u);if(Array.isArray(u)){let c=u.map(n).filter(Boolean);return c.length===1?c[0]:`[${c.join(", ")}]`}if(u.type===x){let c=((a=s==null?void 0:s[i+1])==null?void 0:a.type)===b;return u.literal?c?"literalline":"literallineWithoutBreakParent":u.hard?c?"hardline":"hardlineWithoutBreakParent":u.soft?"softline":"line"}if(u.type===b)return((D=s==null?void 0:s[i-1])==null?void 0:D.type)===x&&s[i-1].hard?void 0:"breakParent";if(u.type===P)return"trim";if(u.type===N)return"indent("+n(u.contents)+")";if(u.type===v)return u.n===Number.NEGATIVE_INFINITY?"dedentToRoot("+n(u.contents)+")":u.n<0?"dedent("+n(u.contents)+")":u.n.type==="root"?"markAsRoot("+n(u.contents)+")":"align("+JSON.stringify(u.n)+", "+n(u.contents)+")";if(u.type===B)return"ifBreak("+n(u.breakContents)+(u.flatContents?", "+n(u.flatContents):"")+(u.groupId?(u.flatContents?"":', ""')+`, { groupId: ${o(u.groupId)} }`:"")+")";if(u.type===L){let c=[];u.negate&&c.push("negate: true"),u.groupId&&c.push(`groupId: ${o(u.groupId)}`);let p=c.length>0?`, { ${c.join(", ")} }`:"";return`indentIfBreak(${n(u.contents)}${p})`}if(u.type===A){let c=[];u.break&&u.break!=="propagated"&&c.push("shouldBreak: true"),u.id&&c.push(`id: ${o(u.id)}`);let p=c.length>0?`, { ${c.join(", ")} }`:"";return u.expandedStates?`conditionalGroup([${u.expandedStates.map(l=>n(l)).join(",")}]${p})`:`group(${n(u.contents)}${p})`}if(u.type===k)return`fill([${u.parts.map(c=>n(c)).join(", ")}])`;if(u.type===I)return"lineSuffix("+n(u.contents)+")";if(u.type===R)return"lineSuffixBoundary";if(u.type===O)return`label(${JSON.stringify(u.label)}, ${n(u.contents)})`;throw new Error("Unknown doc type "+u.type)}function o(u){if(typeof u!="symbol")return JSON.stringify(String(u));if(u in e)return e[u];let i=u.description||"symbol";for(let s=0;;s++){let a=i+(s>0?` #${s}`:"");if(!r.has(a))return r.add(a),e[u]=`Symbol.for(${JSON.stringify(a)})`}}}function Lu(t,e,r=0){let n=0;for(let o=r;o<t.length;++o)t[o]===" "?n=n+e-n%e:n++;return n}var Fe=Lu;var Le=class extends Error{name="ConfigError"},ce=class extends Error{name="UndefinedParserError"};var Zr={cursorOffset:{category:"Special",type:"int",default:-1,range:{start:-1,end:1/0,step:1},description:`Print (to stderr) where a cursor at the given position would move to after formatting. This option cannot be used with --range-start and --range-end.`,cliCategory:"Editor"},endOfLine:{category:"Global",type:"choice",default:"lf",description:"Which end of line characters to apply.",choices:[{value:"lf",description:"Line Feed only (\\n), common on Linux and macOS as well as inside git repos"},{value:"crlf",description:"Carriage Return + Line Feed characters (\\r\\n), common on Windows"},{value:"cr",description:"Carriage Return character only (\\r), used very rarely"},{value:"auto",description:`Maintain existing (mixed values within one file are normalised by looking at what's used after the first line)`}]},filepath:{category:"Special",type:"path",description:"Specify the input filepath. This will be used to do parser inference.",cliName:"stdin-filepath",cliCategory:"Other",cliDescription:"Path to the file to pretend that stdin comes from."},insertPragma:{category:"Special",type:"boolean",default:!1,description:"Insert @format pragma into file's first docblock comment.",cliCategory:"Other"},parser:{category:"Global",type:"choice",default:void 0,description:"Which parser to use.",exception:t=>typeof t=="string"||typeof t=="function",choices:[{value:"flow",description:"Flow"},{value:"babel",description:"JavaScript"},{value:"babel-flow",description:"Flow"},{value:"babel-ts",description:"TypeScript"},{value:"typescript",description:"TypeScript"},{value:"acorn",description:"JavaScript"},{value:"espree",description:"JavaScript"},{value:"meriyah",description:"JavaScript"},{value:"css",description:"CSS"},{value:"less",description:"Less"},{value:"scss",description:"SCSS"},{value:"json",description:"JSON"},{value:"json5",description:"JSON5"},{value:"json-stringify",description:"JSON.stringify"},{value:"graphql",description:"GraphQL"},{value:"markdown",description:"Markdown"},{value:"mdx",description:"MDX"},{value:"vue",description:"Vue"},{value:"yaml",description:"YAML"},{value:"glimmer",description:"Ember / Handlebars"},{value:"html",description:"HTML"},{value:"angular",description:"Angular"},{value:"lwc",description:"Lightning Web Components"}]},plugins:{type:"path",array:!0,default:[{value:[]}],category:"Global",description:"Add a plugin. Multiple plugins can be passed as separate `--plugin`s.",exception:t=>typeof t=="string"||typeof t=="object",cliName:"plugin",cliCategory:"Config"},printWidth:{category:"Global",type:"int",default:80,description:"The line length where Prettier will try wrap.",range:{start:0,end:1/0,step:1}},rangeEnd:{category:"Special",type:"int",default:1/0,range:{start:0,end:1/0,step:1},description:`Format code ending at a given character offset (exclusive). The range will extend forwards to the end of the selected statement. This option cannot be used with --cursor-offset.`,cliCategory:"Editor"},rangeStart:{category:"Special",type:"int",default:0,range:{start:0,end:1/0,step:1},description:`Format code starting at a given character offset. The range will extend backwards to the start of the first line containing the selected statement. This option cannot be used with --cursor-offset.`,cliCategory:"Editor"},requirePragma:{category:"Special",type:"boolean",default:!1,description:`Require either '@prettier' or '@format' to be present in the file's first docblock comment in order for it to be formatted.`,cliCategory:"Other"},tabWidth:{type:"int",category:"Global",default:2,description:"Number of spaces per indentation level.",range:{start:0,end:1/0,step:1}},useTabs:{category:"Global",type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{category:"Global",type:"choice",default:"auto",description:"Control how Prettier formats quoted code embedded in the file.",choices:[{value:"auto",description:"Format embedded code if Prettier can automatically identify it."},{value:"off",description:"Never automatically format embedded code."}]}};function Ie({plugins:t=[],showDeprecated:e=!1}={}){let r=t.flatMap(o=>o.languages??[]),n=[];for(let o of Ru(Object.assign({},...t.map(({options:u})=>u),Zr)))!e&&o.deprecated||(Array.isArray(o.choices)&&(e||(o.choices=o.choices.filter(u=>!u.deprecated)),o.name==="parser"&&(o.choices=[...o.choices,...Iu(o.choices,r,t)])),o.pluginDefaults=Object.fromEntries(t.filter(u=>{var i;return((i=u.defaultOptions)==null?void 0:i[o.name])!==void 0}).map(u=>[u.name,u.defaultOptions[o.name]])),n.push(o));return{languages:r,options:n}}function*Iu(t,e,r){let n=new Set(t.map(o=>o.value));for(let o of e)if(o.parsers){for(let u of o.parsers)if(!n.has(u)){n.add(u);let i=r.find(a=>a.parsers&&Object.prototype.hasOwnProperty.call(a.parsers,u)),s=o.name;i!=null&&i.name&&(s+=` (plugin: ${i.name})`),yield{value:u,description:s}}}}function Ru(t){let e=[];for(let[r,n]of Object.entries(t)){let o={name:r,...n};Array.isArray(o.default)&&(o.default=y(!1,o.default,-1).value),e.push(o)}return e}var Yu=t=>t.split(/[/\\]/).pop();function Qr(t,e){if(!e)return;let r=Yu(e).toLowerCase();return t.find(n=>{var o,u;return((o=n.extensions)==null?void 0:o.some(i=>r.endsWith(i)))||((u=n.filenames)==null?void 0:u.some(i=>i.toLowerCase()===r))})}function ju(t,e){if(e)return t.find(({name:r})=>r.toLowerCase()===e)??t.find(({aliases:r})=>r==null?void 0:r.includes(e))??t.find(({extensions:r})=>r==null?void 0:r.includes(`.${e}`))}function Vu(t,e){let r=t.plugins.flatMap(o=>o.languages??[]),n=ju(r,e.language)??Qr(r,e.physicalFile)??Qr(r,e.file)??(e.physicalFile,void 0);return n==null?void 0:n.parsers[0]}var vt=Vu;var ne={key:t=>/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(t)?t:JSON.stringify(t),value(t){if(t===null||typeof t!="object")return JSON.stringify(t);if(Array.isArray(t))return`[${t.map(r=>ne.value(r)).join(", ")}]`;let e=Object.keys(t);return e.length===0?"{}":`{ ${e.map(r=>`${ne.key(r)}: ${ne.value(t[r])}`).join(", ")} }`},pair:({key:t,value:e})=>ne.value({[t]:e})};Re();var en=(t,e,{descriptor:r})=>{let n=[`${S.yellow(typeof t=="string"?r.key(t):r.pair(t))} is deprecated`];return e&&n.push(`we now treat it as ${S.blue(typeof e=="string"?r.key(e):r.pair(e))}`),n.join("; ")+"."};Re();var rt=Symbol.for("vnopts.VALUE_NOT_EXIST"),me=Symbol.for("vnopts.VALUE_UNCHANGED");var tn=" ".repeat(2),nn=(t,e,r)=>{let{text:n,list:o}=r.normalizeExpectedResult(r.schemas[t].expected(r)),u=[];return n&&u.push(rn(t,e,n,r.descriptor)),o&&u.push([rn(t,e,o.title,r.descriptor)].concat(o.values.map(i=>un(i,r.loggerPrintWidth))).join(` `)),on(u,r.loggerPrintWidth)};function rn(t,e,r,n){return[`Invalid ${S.red(n.key(t))} value.`,`Expected ${S.blue(r)},`,`but received ${e===rt?S.gray("nothing"):S.red(n.value(e))}.`].join(" ")}function un({text:t,list:e},r){let n=[];return t&&n.push(`- ${S.blue(t)}`),e&&n.push([`- ${S.blue(e.title)}:`].concat(e.values.map(o=>un(o,r-tn.length).replace(/^|\n/g,`$&${tn}`))).join(` `)),on(n,r)}function on(t,e){if(t.length===1)return t[0];let[r,n]=t,[o,u]=t.map(i=>i.split(` `,1)[0].length);return o>e&&o>u?n:r}Re();var Pt=[],sn=[];function Lt(t,e){if(t===e)return 0;let r=t;t.length>e.length&&(t=e,e=r);let n=t.length,o=e.length;for(;n>0&&t.charCodeAt(~-n)===e.charCodeAt(~-o);)n--,o--;let u=0;for(;u<n&&t.charCodeAt(u)===e.charCodeAt(u);)u++;if(n-=u,o-=u,n===0)return o;let i,s,a,D,c=0,p=0;for(;c<n;)sn[c]=t.charCodeAt(u+c),Pt[c]=++c;for(;p<o;)for(i=e.charCodeAt(u+p),a=p++,s=p,c=0;c<n;c++)D=i===sn[c]?a:a+1,a=Pt[c],s=Pt[c]=a>s?D>s?s+1:D:D>a?a+1:D;return s}var nt=(t,e,{descriptor:r,logger:n,schemas:o})=>{let u=[`Ignored unknown option ${S.yellow(r.pair({key:t,value:e}))}.`],i=Object.keys(o).sort().find(s=>Lt(t,s)<3);i&&u.push(`Did you mean ${S.blue(r.key(i))}?`),n.warn(u.join(" "))};var $u=["default","expected","validate","deprecated","forward","redirect","overlap","preprocess","postprocess"];function Mu(t,e){let r=new t(e),n=Object.create(r);for(let o of $u)o in e&&(n[o]=Uu(e[o],r,w.prototype[o].length));return n}var w=class{static create(e){return Mu(this,e)}constructor(e){this.name=e.name}default(e){}expected(e){return"nothing"}validate(e,r){return!1}deprecated(e,r){return!1}forward(e,r){}redirect(e,r){}overlap(e,r,n){return e}preprocess(e,r){return e}postprocess(e,r){return me}};function Uu(t,e,r){return typeof t=="function"?(...n)=>t(...n.slice(0,r-1),e,...n.slice(r-1)):()=>t}var ut=class extends w{constructor(e){super(e),this._sourceName=e.sourceName}expected(e){return e.schemas[this._sourceName].expected(e)}validate(e,r){return r.schemas[this._sourceName].validate(e,r)}redirect(e,r){return this._sourceName}};var ot=class extends w{expected(){return"anything"}validate(){return!0}};var it=class extends w{constructor({valueSchema:e,name:r=e.name,...n}){super({...n,name:r}),this._valueSchema=e}expected(e){let{text:r,list:n}=e.normalizeExpectedResult(this._valueSchema.expected(e));return{text:r&&`an array of ${r}`,list:n&&{title:"an array of the following values",values:[{list:n}]}}}validate(e,r){if(!Array.isArray(e))return!1;let n=[];for(let o of e){let u=r.normalizeValidateResult(this._valueSchema.validate(o,r),o);u!==!0&&n.push(u.value)}return n.length===0?!0:{value:n}}deprecated(e,r){let n=[];for(let o of e){let u=r.normalizeDeprecatedResult(this._valueSchema.deprecated(o,r),o);u!==!1&&n.push(...u.map(({value:i})=>({value:[i]})))}return n}forward(e,r){let n=[];for(let o of e){let u=r.normalizeForwardResult(this._valueSchema.forward(o,r),o);n.push(...u.map(an))}return n}redirect(e,r){let n=[],o=[];for(let u of e){let i=r.normalizeRedirectResult(this._valueSchema.redirect(u,r),u);"remain"in i&&n.push(i.remain),o.push(...i.redirect.map(an))}return n.length===0?{redirect:o}:{redirect:o,remain:n}}overlap(e,r){return e.concat(r)}};function an({from:t,to:e}){return{from:[t],to:e}}var st=class extends w{expected(){return"true or false"}validate(e){return typeof e=="boolean"}};function cn(t,e){let r=Object.create(null);for(let n of t){let o=n[e];if(r[o])throw new Error(`Duplicate ${e} ${JSON.stringify(o)}`);r[o]=n}return r}function ln(t,e){let r=new Map;for(let n of t){let o=n[e];if(r.has(o))throw new Error(`Duplicate ${e} ${JSON.stringify(o)}`);r.set(o,n)}return r}function fn(){let t=Object.create(null);return e=>{let r=JSON.stringify(e);return t[r]?!0:(t[r]=!0,!1)}}function pn(t,e){let r=[],n=[];for(let o of t)e(o)?r.push(o):n.push(o);return[r,n]}function dn(t){return t===Math.floor(t)}function Fn(t,e){if(t===e)return 0;let r=typeof t,n=typeof e,o=["undefined","object","boolean","number","string"];return r!==n?o.indexOf(r)-o.indexOf(n):r!=="string"?Number(t)-Number(e):t.localeCompare(e)}function mn(t){return(...e)=>{let r=t(...e);return typeof r=="string"?new Error(r):r}}function It(t){return t===void 0?{}:t}function Rt(t){if(typeof t=="string")return{text:t};let{text:e,list:r}=t;return Wu((e||r)!==void 0,"Unexpected `expected` result, there should be at least one field."),r?{text:e,list:{title:r.title,values:r.values.map(Rt)}}:{text:e}}function Yt(t,e){return t===!0?!0:t===!1?{value:e}:t}function jt(t,e,r=!1){return t===!1?!1:t===!0?r?!0:[{value:e}]:"value"in t?[t]:t.length===0?!1:t}function Dn(t,e){return typeof t=="string"||"key"in t?{from:e,to:t}:"from"in t?{from:t.from,to:t.to}:{from:e,to:t.to}}function at(t,e){return t===void 0?[]:Array.isArray(t)?t.map(r=>Dn(r,e)):[Dn(t,e)]}function Vt(t,e){let r=at(typeof t=="object"&&"redirect"in t?t.redirect:t,e);return r.length===0?{remain:e,redirect:r}:typeof t=="object"&&"remain"in t?{remain:t.remain,redirect:r}:{redirect:r}}function Wu(t,e){if(!t)throw new Error(e)}var Dt=class extends w{constructor(e){super(e),this._choices=ln(e.choices.map(r=>r&&typeof r=="object"?r:{value:r}),"value")}expected({descriptor:e}){let r=Array.from(this._choices.keys()).map(i=>this._choices.get(i)).filter(({hidden:i})=>!i).map(i=>i.value).sort(Fn).map(e.value),n=r.slice(0,-2),o=r.slice(-2);return{text:n.concat(o.join(" or ")).join(", "),list:{title:"one of the following values",values:r}}}validate(e){return this._choices.has(e)}deprecated(e){let r=this._choices.get(e);return r&&r.deprecated?{value:e}:!1}forward(e){let r=this._choices.get(e);return r?r.forward:void 0}redirect(e){let r=this._choices.get(e);return r?r.redirect:void 0}};var ct=class extends w{expected(){return"a number"}validate(e,r){return typeof e=="number"}};var lt=class extends ct{expected(){return"an integer"}validate(e,r){return r.normalizeValidateResult(super.validate(e,r),e)===!0&&dn(e)}};var Ye=class extends w{expected(){return"a string"}validate(e){return typeof e=="string"}};var hn=ne,En=nt,Cn=nn,gn=en;var ft=class{constructor(e,r){let{logger:n=console,loggerPrintWidth:o=80,descriptor:u=hn,unknown:i=En,invalid:s=Cn,deprecated:a=gn,missing:D=()=>!1,required:c=()=>!1,preprocess:p=F=>F,postprocess:l=()=>me}=r||{};this._utils={descriptor:u,logger:n||{warn:()=>{}},loggerPrintWidth:o,schemas:cn(e,"name"),normalizeDefaultResult:It,normalizeExpectedResult:Rt,normalizeDeprecatedResult:jt,normalizeForwardResult:at,normalizeRedirectResult:Vt,normalizeValidateResult:Yt},this._unknownHandler=i,this._invalidHandler=mn(s),this._deprecatedHandler=a,this._identifyMissing=(F,f)=>!(F in f)||D(F,f),this._identifyRequired=c,this._preprocess=p,this._postprocess=l,this.cleanHistory()}cleanHistory(){this._hasDeprecationWarned=fn()}normalize(e){let r={},o=[this._preprocess(e,this._utils)],u=()=>{for(;o.length!==0;){let i=o.shift(),s=this._applyNormalization(i,r);o.push(...s)}};u();for(let i of Object.keys(this._utils.schemas)){let s=this._utils.schemas[i];if(!(i in r)){let a=It(s.default(this._utils));"value"in a&&o.push({[i]:a.value})}}u();for(let i of Object.keys(this._utils.schemas)){if(!(i in r))continue;let s=this._utils.schemas[i],a=r[i],D=s.postprocess(a,this._utils);D!==me&&(this._applyValidation(D,i,s),r[i]=D)}return this._applyPostprocess(r),this._applyRequiredCheck(r),r}_applyNormalization(e,r){let n=[],{knownKeys:o,unknownKeys:u}=this._partitionOptionKeys(e);for(let i of o){let s=this._utils.schemas[i],a=s.preprocess(e[i],this._utils);this._applyValidation(a,i,s);let D=({from:F,to:f})=>{n.push(typeof f=="string"?{[f]:F}:{[f.key]:f.value})},c=({value:F,redirectTo:f})=>{let d=jt(s.deprecated(F,this._utils),a,!0);if(d!==!1)if(d===!0)this._hasDeprecationWarned(i)||this._utils.logger.warn(this._deprecatedHandler(i,f,this._utils));else for(let{value:m}of d){let h={key:i,value:m};if(!this._hasDeprecationWarned(h)){let E=typeof f=="string"?{key:f,value:m}:f;this._utils.logger.warn(this._deprecatedHandler(h,E,this._utils))}}};at(s.forward(a,this._utils),a).forEach(D);let l=Vt(s.redirect(a,this._utils),a);if(l.redirect.forEach(D),"remain"in l){let F=l.remain;r[i]=i in r?s.overlap(r[i],F,this._utils):F,c({value:F})}for(let{from:F,to:f}of l.redirect)c({value:F,redirectTo:f})}for(let i of u){let s=e[i];this._applyUnknownHandler(i,s,r,(a,D)=>{n.push({[a]:D})})}return n}_applyRequiredCheck(e){for(let r of Object.keys(this._utils.schemas))if(this._identifyMissing(r,e)&&this._identifyRequired(r))throw this._invalidHandler(r,rt,this._utils)}_partitionOptionKeys(e){let[r,n]=pn(Object.keys(e).filter(o=>!this._identifyMissing(o,e)),o=>o in this._utils.schemas);return{knownKeys:r,unknownKeys:n}}_applyValidation(e,r,n){let o=Yt(n.validate(e,this._utils),e);if(o!==!0)throw this._invalidHandler(r,o.value,this._utils)}_applyUnknownHandler(e,r,n,o){let u=this._unknownHandler(e,r,this._utils);if(u)for(let i of Object.keys(u)){if(this._identifyMissing(i,u))continue;let s=u[i];i in this._utils.schemas?o(i,s):n[i]=s}}_applyPostprocess(e){let r=this._postprocess(e,this._utils);if(r!==me){if(r.delete)for(let n of r.delete)delete e[n];if(r.override){let{knownKeys:n,unknownKeys:o}=this._partitionOptionKeys(r.override);for(let u of n){let i=r.override[u];this._applyValidation(i,u,this._utils.schemas[u]),e[u]=i}for(let u of o){let i=r.override[u];this._applyUnknownHandler(u,i,e,(s,a)=>{let D=this._utils.schemas[s];this._applyValidation(a,s,D),e[s]=a})}}}}};var $t;function Gu(t,e,{logger:r=!1,isCLI:n=!1,passThrough:o=!1,FlagSchema:u,descriptor:i}={}){if(n){if(!u)throw new Error("'FlagSchema' option is required.");if(!i)throw new Error("'descriptor' option is required.")}else i=ne;let s=o?Array.isArray(o)?(l,F)=>o.includes(l)?{[l]:F}:void 0:(l,F)=>({[l]:F}):(l,F,f)=>{let{_:d,...m}=f.schemas;return nt(l,F,{...f,schemas:m})},a=Ku(e,{isCLI:n,FlagSchema:u}),D=new ft(a,{logger:r,unknown:s,descriptor:i}),c=r!==!1;c&&$t&&(D._hasDeprecationWarned=$t);let p=D.normalize(t);return c&&($t=D._hasDeprecationWarned),p}function Ku(t,{isCLI:e,FlagSchema:r}){let n=[];e&&n.push(ot.create({name:"_"}));for(let o of t)n.push(Hu(o,{isCLI:e,optionInfos:t,FlagSchema:r})),o.alias&&e&&n.push(ut.create({name:o.alias,sourceName:o.name}));return n}function Hu(t,{isCLI:e,optionInfos:r,FlagSchema:n}){let{name:o}=t,u={name:o},i,s={};switch(t.type){case"int":i=lt,e&&(u.preprocess=Number);break;case"string":i=Ye;break;case"choice":i=Dt,u.choices=t.choices.map(a=>a!=null&&a.redirect?{