@storybook/cli 9.1.0-alpha.5 → 9.1.0-alpha.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/index.cjs +209 -398
- package/package.json +16 -16
package/dist/bin/index.cjs
CHANGED
|
@@ -1,265 +1,181 @@
|
|
|
1
|
-
"use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __esm=(fn,res)=>function(){return fn&&(res=(0,fn[__getOwnPropNames(fn)[0]])(fn=0)),res};var __commonJS=(cb,mod)=>function(){return mod||(0,cb[__getOwnPropNames(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports};var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod));var require_picocolors=__commonJS({"../../node_modules/picocolors/picocolors.js"(exports2,module2){"use strict";var p=process||{},argv=p.argv||[],env2=p.env||{},isColorSupported=!(env2.NO_COLOR||argv.includes("--no-color"))&&(!!env2.FORCE_COLOR||argv.includes("--color")||p.platform==="win32"||(p.stdout||{}).isTTY&&env2.TERM!=="dumb"||!!env2.CI),formatter=(open,close,replace=open)=>input=>{let string=""+input,index=string.indexOf(close,open.length);return~index?open+replaceClose(string,close,replace,index)+close:open+string+close},replaceClose=(string,close,replace,index)=>{let result="",cursor=0;do result+=string.substring(cursor,index)+replace,cursor=index+close.length,index=string.indexOf(close,cursor);while(~index);return result+string.substring(cursor)},createColors=(enabled=isColorSupported)=>{let f=enabled?formatter:()=>String;return{isColorSupported:enabled,reset:f("\x1B[0m","\x1B[0m"),bold:f("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:f("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:f("\x1B[3m","\x1B[23m"),underline:f("\x1B[4m","\x1B[24m"),inverse:f("\x1B[7m","\x1B[27m"),hidden:f("\x1B[8m","\x1B[28m"),strikethrough:f("\x1B[9m","\x1B[29m"),black:f("\x1B[30m","\x1B[39m"),red:f("\x1B[31m","\x1B[39m"),green:f("\x1B[32m","\x1B[39m"),yellow:f("\x1B[33m","\x1B[39m"),blue:f("\x1B[34m","\x1B[39m"),magenta:f("\x1B[35m","\x1B[39m"),cyan:f("\x1B[36m","\x1B[39m"),white:f("\x1B[37m","\x1B[39m"),gray:f("\x1B[90m","\x1B[39m"),bgBlack:f("\x1B[40m","\x1B[49m"),bgRed:f("\x1B[41m","\x1B[49m"),bgGreen:f("\x1B[42m","\x1B[49m"),bgYellow:f("\x1B[43m","\x1B[49m"),bgBlue:f("\x1B[44m","\x1B[49m"),bgMagenta:f("\x1B[45m","\x1B[49m"),bgCyan:f("\x1B[46m","\x1B[49m"),bgWhite:f("\x1B[47m","\x1B[49m"),blackBright:f("\x1B[90m","\x1B[39m"),redBright:f("\x1B[91m","\x1B[39m"),greenBright:f("\x1B[92m","\x1B[39m"),yellowBright:f("\x1B[93m","\x1B[39m"),blueBright:f("\x1B[94m","\x1B[39m"),magentaBright:f("\x1B[95m","\x1B[39m"),cyanBright:f("\x1B[96m","\x1B[39m"),whiteBright:f("\x1B[97m","\x1B[39m"),bgBlackBright:f("\x1B[100m","\x1B[49m"),bgRedBright:f("\x1B[101m","\x1B[49m"),bgGreenBright:f("\x1B[102m","\x1B[49m"),bgYellowBright:f("\x1B[103m","\x1B[49m"),bgBlueBright:f("\x1B[104m","\x1B[49m"),bgMagentaBright:f("\x1B[105m","\x1B[49m"),bgCyanBright:f("\x1B[106m","\x1B[49m"),bgWhiteBright:f("\x1B[107m","\x1B[49m")}};module2.exports=createColors();module2.exports.createColors=createColors}});var require_eastasianwidth=__commonJS({"../../node_modules/eastasianwidth/eastasianwidth.js"(exports2,module2){"use strict";var eaw={};typeof module2>"u"?window.eastasianwidth=eaw:module2.exports=eaw;eaw.eastAsianWidth=function(character){var x=character.charCodeAt(0),y=character.length==2?character.charCodeAt(1):0,codePoint=x;return 55296<=x&&x<=56319&&56320<=y&&y<=57343&&(x&=1023,y&=1023,codePoint=x<<10|y,codePoint+=65536),codePoint==12288||65281<=codePoint&&codePoint<=65376||65504<=codePoint&&codePoint<=65510?"F":codePoint==8361||65377<=codePoint&&codePoint<=65470||65474<=codePoint&&codePoint<=65479||65482<=codePoint&&codePoint<=65487||65490<=codePoint&&codePoint<=65495||65498<=codePoint&&codePoint<=65500||65512<=codePoint&&codePoint<=65518?"H":4352<=codePoint&&codePoint<=4447||4515<=codePoint&&codePoint<=4519||4602<=codePoint&&codePoint<=4607||9001<=codePoint&&codePoint<=9002||11904<=codePoint&&codePoint<=11929||11931<=codePoint&&codePoint<=12019||12032<=codePoint&&codePoint<=12245||12272<=codePoint&&codePoint<=12283||12289<=codePoint&&codePoint<=12350||12353<=codePoint&&codePoint<=12438||12441<=codePoint&&codePoint<=12543||12549<=codePoint&&codePoint<=12589||12593<=codePoint&&codePoint<=12686||12688<=codePoint&&codePoint<=12730||12736<=codePoint&&codePoint<=12771||12784<=codePoint&&codePoint<=12830||12832<=codePoint&&codePoint<=12871||12880<=codePoint&&codePoint<=13054||13056<=codePoint&&codePoint<=19903||19968<=codePoint&&codePoint<=42124||42128<=codePoint&&codePoint<=42182||43360<=codePoint&&codePoint<=43388||44032<=codePoint&&codePoint<=55203||55216<=codePoint&&codePoint<=55238||55243<=codePoint&&codePoint<=55291||63744<=codePoint&&codePoint<=64255||65040<=codePoint&&codePoint<=65049||65072<=codePoint&&codePoint<=65106||65108<=codePoint&&codePoint<=65126||65128<=codePoint&&codePoint<=65131||110592<=codePoint&&codePoint<=110593||127488<=codePoint&&codePoint<=127490||127504<=codePoint&&codePoint<=127546||127552<=codePoint&&codePoint<=127560||127568<=codePoint&&codePoint<=127569||131072<=codePoint&&codePoint<=194367||177984<=codePoint&&codePoint<=196605||196608<=codePoint&&codePoint<=262141?"W":32<=codePoint&&codePoint<=126||162<=codePoint&&codePoint<=163||165<=codePoint&&codePoint<=166||codePoint==172||codePoint==175||10214<=codePoint&&codePoint<=10221||10629<=codePoint&&codePoint<=10630?"Na":codePoint==161||codePoint==164||167<=codePoint&&codePoint<=168||codePoint==170||173<=codePoint&&codePoint<=174||176<=codePoint&&codePoint<=180||182<=codePoint&&codePoint<=186||188<=codePoint&&codePoint<=191||codePoint==198||codePoint==208||215<=codePoint&&codePoint<=216||222<=codePoint&&codePoint<=225||codePoint==230||232<=codePoint&&codePoint<=234||236<=codePoint&&codePoint<=237||codePoint==240||242<=codePoint&&codePoint<=243||247<=codePoint&&codePoint<=250||codePoint==252||codePoint==254||codePoint==257||codePoint==273||codePoint==275||codePoint==283||294<=codePoint&&codePoint<=295||codePoint==299||305<=codePoint&&codePoint<=307||codePoint==312||319<=codePoint&&codePoint<=322||codePoint==324||328<=codePoint&&codePoint<=331||codePoint==333||338<=codePoint&&codePoint<=339||358<=codePoint&&codePoint<=359||codePoint==363||codePoint==462||codePoint==464||codePoint==466||codePoint==468||codePoint==470||codePoint==472||codePoint==474||codePoint==476||codePoint==593||codePoint==609||codePoint==708||codePoint==711||713<=codePoint&&codePoint<=715||codePoint==717||codePoint==720||728<=codePoint&&codePoint<=731||codePoint==733||codePoint==735||768<=codePoint&&codePoint<=879||913<=codePoint&&codePoint<=929||931<=codePoint&&codePoint<=937||945<=codePoint&&codePoint<=961||963<=codePoint&&codePoint<=969||codePoint==1025||1040<=codePoint&&codePoint<=1103||codePoint==1105||codePoint==8208||8211<=codePoint&&codePoint<=8214||8216<=codePoint&&codePoint<=8217||8220<=codePoint&&codePoint<=8221||8224<=codePoint&&codePoint<=8226||8228<=codePoint&&codePoint<=8231||codePoint==8240||8242<=codePoint&&codePoint<=8243||codePoint==8245||codePoint==8251||codePoint==8254||codePoint==8308||codePoint==8319||8321<=codePoint&&codePoint<=8324||codePoint==8364||codePoint==8451||codePoint==8453||codePoint==8457||codePoint==8467||codePoint==8470||8481<=codePoint&&codePoint<=8482||codePoint==8486||codePoint==8491||8531<=codePoint&&codePoint<=8532||8539<=codePoint&&codePoint<=8542||8544<=codePoint&&codePoint<=8555||8560<=codePoint&&codePoint<=8569||codePoint==8585||8592<=codePoint&&codePoint<=8601||8632<=codePoint&&codePoint<=8633||codePoint==8658||codePoint==8660||codePoint==8679||codePoint==8704||8706<=codePoint&&codePoint<=8707||8711<=codePoint&&codePoint<=8712||codePoint==8715||codePoint==8719||codePoint==8721||codePoint==8725||codePoint==8730||8733<=codePoint&&codePoint<=8736||codePoint==8739||codePoint==8741||8743<=codePoint&&codePoint<=8748||codePoint==8750||8756<=codePoint&&codePoint<=8759||8764<=codePoint&&codePoint<=8765||codePoint==8776||codePoint==8780||codePoint==8786||8800<=codePoint&&codePoint<=8801||8804<=codePoint&&codePoint<=8807||8810<=codePoint&&codePoint<=8811||8814<=codePoint&&codePoint<=8815||8834<=codePoint&&codePoint<=8835||8838<=codePoint&&codePoint<=8839||codePoint==8853||codePoint==8857||codePoint==8869||codePoint==8895||codePoint==8978||9312<=codePoint&&codePoint<=9449||9451<=codePoint&&codePoint<=9547||9552<=codePoint&&codePoint<=9587||9600<=codePoint&&codePoint<=9615||9618<=codePoint&&codePoint<=9621||9632<=codePoint&&codePoint<=9633||9635<=codePoint&&codePoint<=9641||9650<=codePoint&&codePoint<=9651||9654<=codePoint&&codePoint<=9655||9660<=codePoint&&codePoint<=9661||9664<=codePoint&&codePoint<=9665||9670<=codePoint&&codePoint<=9672||codePoint==9675||9678<=codePoint&&codePoint<=9681||9698<=codePoint&&codePoint<=9701||codePoint==9711||9733<=codePoint&&codePoint<=9734||codePoint==9737||9742<=codePoint&&codePoint<=9743||9748<=codePoint&&codePoint<=9749||codePoint==9756||codePoint==9758||codePoint==9792||codePoint==9794||9824<=codePoint&&codePoint<=9825||9827<=codePoint&&codePoint<=9829||9831<=codePoint&&codePoint<=9834||9836<=codePoint&&codePoint<=9837||codePoint==9839||9886<=codePoint&&codePoint<=9887||9918<=codePoint&&codePoint<=9919||9924<=codePoint&&codePoint<=9933||9935<=codePoint&&codePoint<=9953||codePoint==9955||9960<=codePoint&&codePoint<=9983||codePoint==10045||codePoint==10071||10102<=codePoint&&codePoint<=10111||11093<=codePoint&&codePoint<=11097||12872<=codePoint&&codePoint<=12879||57344<=codePoint&&codePoint<=63743||65024<=codePoint&&codePoint<=65039||codePoint==65533||127232<=codePoint&&codePoint<=127242||127248<=codePoint&&codePoint<=127277||127280<=codePoint&&codePoint<=127337||127344<=codePoint&&codePoint<=127386||917760<=codePoint&&codePoint<=917999||983040<=codePoint&&codePoint<=1048573||1048576<=codePoint&&codePoint<=1114109?"A":"N"};eaw.characterLength=function(character){var code=this.eastAsianWidth(character);return code=="F"||code=="W"||code=="A"?2:1};function stringToArray(string){return string.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}eaw.length=function(string){for(var characters=stringToArray(string),len=0,i=0;i<characters.length;i++)len=len+this.characterLength(characters[i]);return len};eaw.slice=function(text,start,end){textLen=eaw.length(text),start=start||0,end=end||1,start<0&&(start=textLen+start),end<0&&(end=textLen+end);for(var result="",eawLen=0,chars=stringToArray(text),i=0;i<chars.length;i++){var char=chars[i],charLen=eaw.length(char);if(eawLen>=start-(charLen==2?1:0))if(eawLen+charLen<=end)result+=char;else break;eawLen+=charLen}return result}}});var require_emoji_regex=__commonJS({"../../node_modules/emoji-regex/index.js"(exports2,module2){"use strict";module2.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\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|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\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]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\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]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\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\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}}});var require_boxes=__commonJS({"../../node_modules/cli-boxes/boxes.json"(exports2,module2){module2.exports={single:{topLeft:"\u250C",top:"\u2500",topRight:"\u2510",right:"\u2502",bottomRight:"\u2518",bottom:"\u2500",bottomLeft:"\u2514",left:"\u2502"},double:{topLeft:"\u2554",top:"\u2550",topRight:"\u2557",right:"\u2551",bottomRight:"\u255D",bottom:"\u2550",bottomLeft:"\u255A",left:"\u2551"},round:{topLeft:"\u256D",top:"\u2500",topRight:"\u256E",right:"\u2502",bottomRight:"\u256F",bottom:"\u2500",bottomLeft:"\u2570",left:"\u2502"},bold:{topLeft:"\u250F",top:"\u2501",topRight:"\u2513",right:"\u2503",bottomRight:"\u251B",bottom:"\u2501",bottomLeft:"\u2517",left:"\u2503"},singleDouble:{topLeft:"\u2553",top:"\u2500",topRight:"\u2556",right:"\u2551",bottomRight:"\u255C",bottom:"\u2500",bottomLeft:"\u2559",left:"\u2551"},doubleSingle:{topLeft:"\u2552",top:"\u2550",topRight:"\u2555",right:"\u2502",bottomRight:"\u255B",bottom:"\u2550",bottomLeft:"\u2558",left:"\u2502"},classic:{topLeft:"+",top:"-",topRight:"+",right:"|",bottomRight:"+",bottom:"-",bottomLeft:"+",left:"|"},arrow:{topLeft:"\u2198",top:"\u2193",topRight:"\u2199",right:"\u2190",bottomRight:"\u2196",bottom:"\u2191",bottomLeft:"\u2197",left:"\u2192"}}}});var require_cli_boxes=__commonJS({"../../node_modules/cli-boxes/index.js"(exports2,module2){"use strict";var cliBoxes2=require_boxes();module2.exports=cliBoxes2;module2.exports.default=cliBoxes2}});var require_ansi_regex=__commonJS({"../../node_modules/string-width/node_modules/ansi-regex/index.js"(exports2,module2){"use strict";module2.exports=({onlyFirst=!1}={})=>{let pattern=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(pattern,onlyFirst?void 0:"g")}}});var require_strip_ansi=__commonJS({"../../node_modules/string-width/node_modules/strip-ansi/index.js"(exports2,module2){"use strict";var ansiRegex3=require_ansi_regex();module2.exports=string=>typeof string=="string"?string.replace(ansiRegex3(),""):string}});var require_is_fullwidth_code_point=__commonJS({"../../node_modules/is-fullwidth-code-point/index.js"(exports2,module2){"use strict";var isFullwidthCodePoint=codePoint=>Number.isNaN(codePoint)?!1:codePoint>=4352&&(codePoint<=4447||codePoint===9001||codePoint===9002||11904<=codePoint&&codePoint<=12871&&codePoint!==12351||12880<=codePoint&&codePoint<=19903||19968<=codePoint&&codePoint<=42182||43360<=codePoint&&codePoint<=43388||44032<=codePoint&&codePoint<=55203||63744<=codePoint&&codePoint<=64255||65040<=codePoint&&codePoint<=65049||65072<=codePoint&&codePoint<=65131||65281<=codePoint&&codePoint<=65376||65504<=codePoint&&codePoint<=65510||110592<=codePoint&&codePoint<=110593||127488<=codePoint&&codePoint<=127569||131072<=codePoint&&codePoint<=262141);module2.exports=isFullwidthCodePoint;module2.exports.default=isFullwidthCodePoint}});var require_emoji_regex2=__commonJS({"../../node_modules/string-width/node_modules/emoji-regex/index.js"(exports2,module2){"use strict";module2.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}}});var require_string_width=__commonJS({"../../node_modules/string-width/index.js"(exports2,module2){"use strict";var stripAnsi2=require_strip_ansi(),isFullwidthCodePoint=require_is_fullwidth_code_point(),emojiRegex3=require_emoji_regex2(),stringWidth3=string=>{if(typeof string!="string"||string.length===0||(string=stripAnsi2(string),string.length===0))return 0;string=string.replace(emojiRegex3()," ");let width=0;for(let i=0;i<string.length;i++){let code=string.codePointAt(i);code<=31||code>=127&&code<=159||code>=768&&code<=879||(code>65535&&i++,width+=isFullwidthCodePoint(code)?2:1)}return width};module2.exports=stringWidth3;module2.exports.default=stringWidth3}});var require_ansi_align=__commonJS({"../../node_modules/ansi-align/index.js"(exports2,module2){"use strict";var stringWidth3=require_string_width();function ansiAlign2(text,opts){if(!text)return text;opts=opts||{};let align=opts.align||"center";if(align==="left")return text;let split=opts.split||`
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
"use strict";var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __esm=(fn,res)=>function(){return fn&&(res=(0,fn[__getOwnPropNames(fn)[0]])(fn=0)),res};var __commonJS=(cb,mod)=>function(){return mod||(0,cb[__getOwnPropNames(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports};var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod));var require_envinfo=__commonJS({"../../node_modules/envinfo/dist/envinfo.js"(exports2,module2){"use strict";(()=>{var e={2980:(e2,t8,r2)=>{"use strict";r2(7360),r2(5888),r2(8412),r2(3852),r2(5584);var n=r2(9892),o=r2(5008),i=r2(5088),s=r2(224);function a(e3,t9){(t9=t9||{}).clipboard&&console.log(`
|
|
2
|
+
*** Clipboard option removed - use clipboardy or clipboard-cli directly ***
|
|
3
|
+
`);var r3=Object.keys(e3).length>0?e3:i.defaults,s2=Object.entries(r3).reduce(function(e4,r4){var o2=r4[0],i2=r4[1],s3=n[`get${o2}`];return s3?(i2&&e4.push(s3(i2,t9)),e4):e4=e4.concat((i2||[]).map(function(e5){var t10=n[`get${e5.replace(/\s/g,"")}Info`];return t10?t10():Promise.resolve(["Unknown"])}))},[]);return Promise.all(s2).then(function(e4){var r4=e4.reduce(function(e5,t10){return t10&&t10[0]&&Object.assign(e5,{[t10[0]]:t10}),e5},{});return function(e5,t10){var r5=t10.json?o.json:t10.markdown?o.markdown:o.yaml;if(t10.console){var n2=!1;process.stdout.isTTY&&(n2=!0),console.log(r5(e5,Object.assign({},t10,{console:n2})))}return r5(e5,Object.assign({},t10,{console:!1}))}(Object.entries(i.defaults).reduce(function(e5,t10){var n2=t10[0],o2=t10[1];return r4[n2]?Object.assign(e5,{[n2]:r4[n2][1]}):Object.assign(e5,{[n2]:(o2||[]).reduce(function(e6,t11){return r4[t11]?(r4[t11].shift(),r4[t11].length===1?Object.assign(e6,{[t11]:r4[t11][0]}):Object.assign(e6,{[t11]:{version:r4[t11][0],path:r4[t11][1]}})):e6},{})})},{}),t9)})}e2.exports={cli:function(e3){if(e3.all)return a(Object.assign({},i.defaults,{npmPackages:!0,npmGlobalPackages:!0}),e3);if(e3.raw)return a(JSON.parse(e3.raw),e3);if(e3.helper){var t9=n[`get${e3.helper}`]||n[`get${e3.helper}Info`]||n[e3.helper];return t9?t9().then(console.log):console.error("Not Found")}var r3=function(e4,t10){return e4.toLowerCase().includes(t10.toLowerCase())},o2=Object.keys(e3).filter(function(e4){return Object.keys(i.defaults).some(function(t10){return r3(t10,e4)})}),c=Object.entries(i.defaults).reduce(function(t10,n2){return o2.some(function(e4){return r3(e4,n2[0])})?Object.assign(t10,{[n2[0]]:n2[1]||e3[n2[0]]}):t10},{});return e3.preset?i[e3.preset]?a(Object.assign({},s.omit(i[e3.preset],["options"]),c),Object.assign({},i[e3.preset].options,s.pick(e3,["duplicates","fullTree","json","markdown","console"]))):console.error(`
|
|
4
|
+
No "${e3.preset}" preset found.`):a(c,e3)},helpers:n,main:a,run:function(e3,t9){return typeof e3.preset=="string"?a(i[e3.preset],t9):a(e3,t9)}}},5008:(e2,t8,r2)=>{"use strict";r2(223),r2(3852),r2(4880),r2(3708),r2(5584),r2(5308);var n=r2(6232),o=r2(224);function i(e3,t9){return o.log("trace","clean",e3),Object.keys(e3).reduce(function(r3,n2){return!t9.showNotFound&&e3[n2]==="Not Found"||e3[n2]==="N/A"||e3[n2]===void 0||Object.keys(e3[n2]).length===0?r3:o.isObject(e3[n2])?Object.values(e3[n2]).every(function(e4){return e4==="N/A"||!t9.showNotFound&&e4==="Not Found"})?r3:Object.assign(r3,{[n2]:i(e3[n2],t9)}):Object.assign(r3,{[n2]:e3[n2]})},{})}function s(e3,t9){o.log("trace","formatHeaders"),t9||(t9={type:"underline"});var r3={underline:["\x1B[4m","\x1B[0m"]};return e3.slice().split(`
|
|
5
|
+
`).map(function(e4){if(e4.slice("-1")===":"){var n2=e4.match(/^[\s]*/g)[0];return`${n2}${r3[t9.type][0]}${e4.slice(n2.length)}${r3[t9.type][1]}`}return e4}).join(`
|
|
6
|
+
`)}function a(e3){return o.log("trace","formatPackages"),e3.npmPackages?Object.assign(e3,{npmPackages:Object.entries(e3.npmPackages||{}).reduce(function(e4,t9){var r3=t9[0],n2=t9[1];if(n2==="Not Found")return Object.assign(e4,{[r3]:n2});var o2=n2.wanted?`${n2.wanted} =>`:"",i2=Array.isArray(n2.installed)?n2.installed.join(", "):n2.installed,s2=n2.duplicates?`(${n2.duplicates.join(", ")})`:"";return Object.assign(e4,{[r3]:`${o2} ${i2} ${s2}`})},{})}):e3}function c(e3,t9,r3){return r3||(r3={emptyMessage:"None"}),Array.isArray(t9)&&(t9=t9.length>0?t9.join(", "):r3.emptyMessage),{[e3]:t9}}function u(e3,t9){return Object.entries(e3).reduce(function(e4,r3){var n2=r3[0],i2=r3[1];return o.isObject(i2)?Object.assign(e4,{[n2]:u(i2,t9)}):Object.assign(e4,t9(n2,i2))},{})}function l(e3){return o.log("trace","serializeArrays"),u(e3,c)}function f(e3){return o.log("trace","serializeVersionsAndPaths"),Object.entries(e3).reduce(function(e4,t9){return Object.assign(e4,{[t9[0]]:Object.entries(t9[1]).reduce(function(e5,t10){var r3=t10[0],n2=t10[1];return n2.version?Object.assign(e5,{[r3]:[n2.version,n2.path].filter(Boolean).join(" - ")}):Object.assign(e5,{[r3]:[n2][0]})},{})},{})},{})}function p(e3){return n(e3,{indent:" ",prefix:`
|
|
7
|
+
`,postfix:`
|
|
8
|
+
`})}function h(e3){return e3.slice().split(`
|
|
9
|
+
`).map(function(e4){if(e4!==""){var t9=e4.slice("-1")===":",r3=e4.search(/\S|$/);return t9?`${"#".repeat(r3/2+1)} `+e4.slice(r3):" - "+e4.slice(r3)}return""}).join(`
|
|
10
|
+
`)}function d(e3,t9){return t9||(t9={indent:" "}),JSON.stringify(e3,null,t9.indent)}e2.exports={json:function(e3,t9){return o.log("trace","formatToJson"),t9||(t9={}),e3=o.pipe([function(){return i(e3,t9)},t9.title?function(e4){return{[t9.title]:e4}}:o.noop,d])(e3),e3=t9.console?`
|
|
11
|
+
${e3}
|
|
12
|
+
`:e3},markdown:function(e3,t9){return o.log("trace","formatToMarkdown"),o.pipe([function(){return i(e3,t9)},a,l,f,p,h,t9.title?function(e4){return`
|
|
13
|
+
# ${t9.title}${e4}`}:o.noop])(e3,t9)},yaml:function(e3,t9){return o.log("trace","formatToYaml",t9),o.pipe([function(){return i(e3,t9)},a,l,f,t9.title?function(e4){return{[t9.title]:e4}}:o.noop,p,t9.console?s:o.noop])(e3,t9)}}},6732:(e2,t8,r2)=>{"use strict";r2(5888);var n=r2(224);e2.exports={getNodeInfo:function(){return n.log("trace","getNodeInfo"),Promise.all([n.isWindows?n.run("node -v").then(n.findVersion):n.which("node").then(function(e3){return e3?n.run(e3+" -v"):Promise.resolve("")}).then(n.findVersion),n.which("node").then(n.condensePath)]).then(function(e3){return n.determineFound("Node",e3[0],e3[1])})},getnpmInfo:function(){return n.log("trace","getnpmInfo"),Promise.all([n.run("npm -v"),n.which("npm").then(n.condensePath)]).then(function(e3){return n.determineFound("npm",e3[0],e3[1])})},getWatchmanInfo:function(){return n.log("trace","getWatchmanInfo"),Promise.all([n.which("watchman").then(function(e3){return e3?n.run(e3+" -v"):void 0}),n.which("watchman")]).then(function(e3){return n.determineFound("Watchman",e3[0],e3[1])})},getYarnInfo:function(){return n.log("trace","getYarnInfo"),Promise.all([n.run("yarn -v"),n.which("yarn").then(n.condensePath)]).then(function(e3){return n.determineFound("Yarn",e3[0],e3[1])})},getpnpmInfo:function(){return n.log("trace","getpnpmInfo"),Promise.all([n.run("pnpm -v"),n.which("pnpm").then(n.condensePath)]).then(function(e3){return n.determineFound("pnpm",e3[0],e3[1])})},getbunInfo:function(){return n.log("trace","getbunInfo"),Promise.all([n.run("bun -v"),n.which("bun").then(n.condensePath)]).then(function(e3){return n.determineFound("bun",e3[0],e3[1])})}}},2524:(e2,t8,r2)=>{"use strict";r2(3708),r2(5888),r2(8412);var n=r2(2058),o=r2(8558),i=r2(224),s=r2(7072);function a(e3,t9){var r3;return(i.isLinux?i.run("firefox --version").then(function(e4){return e4.replace(/^.* ([^ ]*)/g,"$1")}):i.isMacOS&&typeof e3=="string"&&e3?i.getDarwinApplicationVersion(e3):i.isWindows&&typeof t9=="string"&&t9?i.windowsExeExists(t9).then(function(e4){return r3=e4,e4?i.run(`powershell ". '${e4}' -v | Write-Output"`).then(function(e5){return i.findVersion(e5)}):i.NA}):Promise.resolve(i.NA)).then(function(e4){return i.determineFound("Firefox",e4,r3||i.NA)})}e2.exports={getBraveBrowserInfo:function(){return i.log("trace","getBraveBrowser"),(i.isLinux?i.run("brave --version || brave-browser --version").then(function(e3){return e3.replace(/^.* ([^ ]*)/g,"$1")}):i.isMacOS?i.getDarwinApplicationVersion(i.browserBundleIdentifiers["Brave Browser"]).then(i.findVersion):Promise.resolve("N/A")).then(function(e3){return i.determineFound("Brave Browser",e3,"N/A")})},getChromeInfo:function(){var e3;if(i.log("trace","getChromeInfo"),i.isLinux)e3=i.run("google-chrome --version").then(function(e4){return e4.replace(" dev","").replace(/^.* ([^ ]*)/g,"$1")});else if(i.isMacOS)e3=i.getDarwinApplicationVersion(i.browserBundleIdentifiers.Chrome).then(i.findVersion);else if(i.isWindows){var t9;try{t9=i.findVersion(n.readdirSync(s.join(process.env["ProgramFiles(x86)"],"Google/Chrome/Application")).join(`
|
|
14
|
+
`))}catch{t9=i.NotFound}e3=Promise.resolve(t9)}else e3=Promise.resolve("N/A");return e3.then(function(e4){return i.determineFound("Chrome",e4,"N/A")})},getChromeCanaryInfo:function(){return i.log("trace","getChromeCanaryInfo"),i.getDarwinApplicationVersion(i.browserBundleIdentifiers["Chrome Canary"]).then(function(e3){return i.determineFound("Chrome Canary",e3,"N/A")})},getChromiumInfo:function(){return i.log("trace","getChromiumInfo"),(i.isLinux?i.run("chromium --version").then(i.findVersion):Promise.resolve("N/A")).then(function(e3){return i.determineFound("Chromium",e3,"N/A")})},getEdgeInfo:function(){var e3;if(i.log("trace","getEdgeInfo"),i.isWindows&&o.release().split(".")[0]==="10"){var t9={Spartan:"Microsoft.MicrosoftEdge",Chromium:"Microsoft.MicrosoftEdge.Stable",ChromiumDev:"Microsoft.MicrosoftEdge.Dev"};e3=Promise.all(Object.keys(t9).map(function(e4){return function(e5,t10){return i.run(`powershell get-appxpackage ${e5}`).then(function(e6){if(i.findVersion(e6)!=="")return`${t10} (${i.findVersion(e6)})`})}(t9[e4],e4)}).filter(function(e4){return e4!==void 0}))}else{if(!i.isMacOS)return Promise.resolve("N/A");e3=i.getDarwinApplicationVersion(i.browserBundleIdentifiers["Microsoft Edge"])}return e3.then(function(e4){return i.determineFound("Edge",Array.isArray(e4)?e4.filter(function(e5){return e5!==void 0}):e4,i.NA)})},getFirefoxInfo:function(){i.log("trace","getFirefoxInfo"),a(i.browserBundleIdentifiers.Firefox,"Mozilla Firefox/firefox.exe")},getFirefoxDeveloperEditionInfo:function(){i.log("trace","getFirefoxDeveloperEditionInfo"),a(i.browserBundleIdentifiers["Firefox Developer Edition"],"Firefox Developer Edition/firefox.exe")},getFirefoxNightlyInfo:function(){return i.log("trace","getFirefoxNightlyInfo"),(i.isLinux?i.run("firefox-trunk --version").then(function(e3){return e3.replace(/^.* ([^ ]*)/g,"$1")}):i.isMacOS?i.getDarwinApplicationVersion(i.browserBundleIdentifiers["Firefox Nightly"]):Promise.resolve("N/A")).then(function(e3){return i.determineFound("Firefox Nightly",e3,"N/A")})},getInternetExplorerInfo:function(){var e3;if(i.log("trace","getInternetExplorerInfo"),i.isWindows){var t9=[process.env.SYSTEMDRIVE||"C:","Program Files","Internet Explorer","iexplore.exe"].join("\\\\");e3=i.run(`wmic datafile where "name='${t9}'" get Version`).then(i.findVersion)}else e3=Promise.resolve("N/A");return e3.then(function(e4){return i.determineFound("Internet Explorer",e4,"N/A")})},getSafariTechnologyPreviewInfo:function(){return i.log("trace","getSafariTechnologyPreviewInfo"),i.getDarwinApplicationVersion(i.browserBundleIdentifiers["Safari Technology Preview"]).then(function(e3){return i.determineFound("Safari Technology Preview",e3,"N/A")})},getSafariInfo:function(){return i.log("trace","getSafariInfo"),i.getDarwinApplicationVersion(i.browserBundleIdentifiers.Safari).then(function(e3){return i.determineFound("Safari",e3,"N/A")})}}},6620:(e2,t8,r2)=>{"use strict";r2(7360),r2(5888);var n=r2(224);e2.exports={getMongoDBInfo:function(){return n.log("trace","getMongoDBInfo"),Promise.all([n.run("mongo --version").then(n.findVersion),n.which("mongo")]).then(function(e3){return n.determineFound("MongoDB",e3[0],e3[1])})},getMySQLInfo:function(){return n.log("trace","getMySQLInfo"),Promise.all([n.run("mysql --version").then(function(e3){return`${n.findVersion(e3,null,1)}${e3.includes("MariaDB")?" (MariaDB)":""}`}),n.which("mysql")]).then(function(e3){return n.determineFound("MySQL",e3[0],e3[1])})},getPostgreSQLInfo:function(){return n.log("trace","getPostgreSQLInfo"),Promise.all([n.run("postgres --version").then(n.findVersion),n.which("postgres")]).then(function(e3){return n.determineFound("PostgreSQL",e3[0],e3[1])})},getSQLiteInfo:function(){return n.log("trace","getSQLiteInfo"),Promise.all([n.run("sqlite3 --version").then(n.findVersion),n.which("sqlite3")]).then(function(e3){return n.determineFound("SQLite",e3[0],e3[1])})}}},3224:(e2,t8,r2)=>{"use strict";r2(3708),r2(8412),r2(5888);var n=r2(7072),o=r2(224);e2.exports={getAndroidStudioInfo:function(){var e3=Promise.resolve("N/A");if(o.isMacOS){var t9=[n.join("/","Applications","Android Studio.app","Contents","Info.plist"),n.join(process.env.HOME,"Applications","Android Studio.app","Contents","Info.plist"),n.join("/","Applications","JetBrains Toolbox","Android Studio.app","Contents","Info.plist"),n.join(process.env.HOME,"Applications","JetBrains Toolbox","Android Studio.app","Contents","Info.plist")];e3=Promise.all(t9.map(function(e4){return o.fileExists(e4).then(function(t10){if(!t10)return null;var r3=o.generatePlistBuddyCommand(e4.replace(/ /g,"\\ "),["CFBundleShortVersionString","CFBundleVersion"]);return o.run(r3).then(function(e5){return e5.split(`
|
|
15
|
+
`).join(" ")})})})).then(function(e4){return e4.find(function(e5){return e5!==null})||o.NotFound})}else o.isLinux?e3=Promise.all([o.run('cat /opt/android-studio/bin/studio.sh | grep "$Home/.AndroidStudio" | head -1').then(o.findVersion),o.run("cat /opt/android-studio/build.txt")]).then(function(e4){return`${e4[0]} ${e4[1]}`.trim()||o.NotFound}):o.isWindows&&(e3=Promise.all([o.run('wmic datafile where name="C:\\\\Program Files\\\\Android\\\\Android Studio\\\\bin\\\\studio.exe" get Version').then(function(e4){return e4.replace(/(\r\n|\n|\r)/gm,"")}),o.run('type "C:\\\\Program Files\\\\Android\\\\Android Studio\\\\build.txt"').then(function(e4){return e4.replace(/(\r\n|\n|\r)/gm,"")})]).then(function(e4){return`${e4[0]} ${e4[1]}`.trim()||o.NotFound}));return e3.then(function(e4){return o.determineFound("Android Studio",e4)})},getAtomInfo:function(){return o.log("trace","getAtomInfo"),Promise.all([o.getDarwinApplicationVersion(o.ideBundleIdentifiers.Atom),"N/A"]).then(function(e3){return o.determineFound("Atom",e3[0],e3[1])})},getEmacsInfo:function(){return o.log("trace","getEmacsInfo"),o.isMacOS||o.isLinux?Promise.all([o.run("emacs --version").then(o.findVersion),o.run("which emacs")]).then(function(e3){return o.determineFound("Emacs",e3[0],e3[1])}):Promise.resolve(["Emacs","N/A"])},getIntelliJInfo:function(){return o.log("trace","getIntelliJInfo"),o.getDarwinApplicationVersion(o.ideBundleIdentifiers.IntelliJ).then(function(e3){return o.determineFound("IntelliJ",e3)})},getNanoInfo:function(){return o.log("trace","getNanoInfo"),o.isLinux?Promise.all([o.run("nano --version").then(o.findVersion),o.run("which nano")]).then(function(e3){return o.determineFound("Nano",e3[0],e3[1])}):Promise.resolve(["Nano","N/A"])},getNvimInfo:function(){return o.log("trace","getNvimInfo"),o.isMacOS||o.isLinux?Promise.all([o.run("nvim --version").then(o.findVersion),o.run("which nvim")]).then(function(e3){return o.determineFound("Nvim",e3[0],e3[1])}):Promise.resolve(["Vim","N/A"])},getPhpStormInfo:function(){return o.log("trace","getPhpStormInfo"),o.getDarwinApplicationVersion(o.ideBundleIdentifiers.PhpStorm).then(function(e3){return o.determineFound("PhpStorm",e3)})},getSublimeTextInfo:function(){return o.log("trace","getSublimeTextInfo"),Promise.all([o.run("subl --version").then(function(e3){return o.findVersion(e3,/\d+/)}),o.which("subl")]).then(function(e3){return e3[0]===""&&o.isMacOS?(o.log("trace","getSublimeTextInfo using plist"),Promise.all([o.getDarwinApplicationVersion(o.ideBundleIdentifiers["Sublime Text"]),"N/A"])):e3}).then(function(e3){return o.determineFound("Sublime Text",e3[0],e3[1])})},getVimInfo:function(){return o.log("trace","getVimInfo"),o.isMacOS||o.isLinux?Promise.all([o.run("vim --version").then(o.findVersion),o.run("which vim")]).then(function(e3){return o.determineFound("Vim",e3[0],e3[1])}):Promise.resolve(["Vim","N/A"])},getVSCodeInfo:function(){return o.log("trace","getVSCodeInfo"),Promise.all([o.run("code --version").then(o.findVersion),o.which("code")]).then(function(e3){return o.determineFound("VSCode",e3[0],e3[1])})},getVisualStudioInfo:function(){return o.log("trace","getVisualStudioInfo"),o.isWindows?o.run(`"${process.env["ProgramFiles(x86)"]}/Microsoft Visual Studio/Installer/vswhere.exe" -format json -prerelease`).then(function(e3){var t9=JSON.parse(e3).map(function(e4){return{Version:e4.installationVersion,DisplayName:e4.displayName}});return o.determineFound("Visual Studio",t9.map(function(e4){return`${e4.Version} (${e4.DisplayName})`}))}).catch(function(){return Promise.resolve(["Visual Studio",o.NotFound])}):Promise.resolve(["Visual Studio",o.NA])},getWebStormInfo:function(){return o.log("trace","getWebStormInfo"),o.getDarwinApplicationVersion(o.ideBundleIdentifiers.WebStorm).then(function(e3){return o.determineFound("WebStorm",e3)})},getXcodeInfo:function(){return o.log("trace","getXcodeInfo"),o.isMacOS?Promise.all([o.which("xcodebuild").then(function(e3){return o.run(e3+" -version")}).then(function(e3){return`${o.findVersion(e3)}/${e3.split("Build version ")[1]}`}),o.which("xcodebuild")]).then(function(e3){return o.determineFound("Xcode",e3[0],e3[1])}):Promise.resolve(["Xcode","N/A"])}}},9892:(e2,t8,r2)=>{"use strict";function n(e3,t9,r3){return t9 in e3?Object.defineProperty(e3,t9,{value:r3,enumerable:!0,configurable:!0,writable:!0}):e3[t9]=r3,e3}r2(5584);var o=r2(6304),i=r2(224),s=r2(6732),a=r2(2524),c=r2(6620),u=r2(3224),l=r2(6436),f=r2(760),p=r2(2060),h=r2(7508),d=r2(9284),m=r2(8144),g=r2(5882),v=r2(9676);e2.exports=Object.assign({},i,o,function(e3){for(var t9=1;t9<arguments.length;t9++){var r3=arguments[t9]!=null?arguments[t9]:{},o2=Object.keys(r3);typeof Object.getOwnPropertySymbols=="function"&&(o2=o2.concat(Object.getOwnPropertySymbols(r3).filter(function(e4){return Object.getOwnPropertyDescriptor(r3,e4).enumerable}))),o2.forEach(function(t10){n(e3,t10,r3[t10])})}return e3}({},s,a,c,u,l,f,p,h,d,m,g,v))},6436:(e2,t8,r2)=>{"use strict";r2(5888);var n=r2(224);e2.exports={getBashInfo:function(){return n.log("trace","getBashInfo"),Promise.all([n.run("bash --version").then(n.findVersion),n.which("bash")]).then(function(e3){return n.determineFound("Bash",e3[0],e3[1])})},getElixirInfo:function(){return n.log("trace","getElixirInfo"),Promise.all([n.run("elixir --version").then(function(e3){return n.findVersion(e3,/[Elixir]+\s([\d+.[\d+|.]+)/,1)}),n.which("elixir")]).then(function(e3){return Promise.resolve(n.determineFound("Elixir",e3[0],e3[1]))})},getErlangInfo:function(){return n.log("trace","getErlangInfo"),Promise.all([n.run(`erl -eval "{ok, Version} = file:read_file(filename:join([code:root_dir(), 'releases', erlang:system_info(otp_release), 'OTP_VERSION'])), io:fwrite(Version), halt()." -noshell`).then(n.findVersion),n.which("erl")]).then(function(e3){return Promise.resolve(n.determineFound("Erlang",e3[0],e3[1]))})},getGoInfo:function(){return n.log("trace","getGoInfo"),Promise.all([n.run("go version").then(n.findVersion),n.which("go")]).then(function(e3){return n.determineFound("Go",e3[0],e3[1])})},getJavaInfo:function(){return n.log("trace","getJavaInfo"),Promise.all([n.run("javac -version",{unify:!0}).then(function(e3){return n.findVersion(e3,/\d+\.[\w+|.|_|-]+/)}),n.run("which javac")]).then(function(e3){return n.determineFound("Java",e3[0],e3[1])})},getPerlInfo:function(){return n.log("trace","getPerlInfo"),Promise.all([n.run("perl -v").then(n.findVersion),n.which("perl")]).then(function(e3){return n.determineFound("Perl",e3[0],e3[1])})},getPHPInfo:function(){return n.log("trace","getPHPInfo"),Promise.all([n.run("php -v").then(n.findVersion),n.which("php")]).then(function(e3){return n.determineFound("PHP",e3[0],e3[1])})},getProtocInfo:function(){return n.log("trace","getProtocInfo"),Promise.all([n.run("protoc --version").then(n.findVersion),n.run("which protoc")]).then(function(e3){return n.determineFound("Protoc",e3[0],e3[1])})},getPythonInfo:function(){return n.log("trace","getPythonInfo"),Promise.all([n.run("python -V 2>&1").then(n.findVersion),n.run("which python")]).then(function(e3){return n.determineFound("Python",e3[0],e3[1])})},getPython3Info:function(){return n.log("trace","getPython3Info"),Promise.all([n.run("python3 -V 2>&1").then(n.findVersion),n.run("which python3")]).then(function(e3){return n.determineFound("Python3",e3[0],e3[1])})},getRInfo:function(){return n.log("trace","getRInfo"),Promise.all([n.run("R --version",{unify:!0}).then(n.findVersion),n.which("R")]).then(function(e3){return n.determineFound("R",e3[0],e3[1])})},getRubyInfo:function(){return n.log("trace","getRubyInfo"),Promise.all([n.run("ruby -v").then(n.findVersion),n.which("ruby")]).then(function(e3){return n.determineFound("Ruby",e3[0],e3[1])})},getRustInfo:function(){return n.log("trace","getRustInfo"),Promise.all([n.run("rustc --version").then(n.findVersion),n.run("which rustc")]).then(function(e3){return n.determineFound("Rust",e3[0],e3[1])})},getScalaInfo:function(){return n.log("trace","getScalaInfo"),n.isMacOS||n.isLinux?Promise.all([n.run("scalac -version").then(n.findVersion),n.run("which scalac")]).then(function(e3){return n.determineFound("Scala",e3[0],e3[1])}):Promise.resolve(["Scala","N/A"])}}},760:(e2,t8,r2)=>{"use strict";r2(5888);var n=r2(224);e2.exports={getAptInfo:function(){return n.log("trace","getAptInfo"),n.isLinux?Promise.all([n.run("apt --version").then(n.findVersion),n.which("apt")]).then(function(e3){return n.determineFound("Apt",e3[0],e3[1])}):Promise.all(["Apt","N/A"])},getCargoInfo:function(){return n.log("trace","getCargoInfo"),Promise.all([n.run("cargo --version").then(n.findVersion),n.which("cargo").then(n.condensePath)]).then(function(e3){return n.determineFound("Cargo",e3[0],e3[1])})},getCocoaPodsInfo:function(){return n.log("trace","getCocoaPodsInfo"),n.isMacOS?Promise.all([n.run("pod --version").then(n.findVersion),n.which("pod")]).then(function(e3){return n.determineFound("CocoaPods",e3[0],e3[1])}):Promise.all(["CocoaPods","N/A"])},getComposerInfo:function(){return n.log("trace","getComposerInfo"),Promise.all([n.run("composer --version").then(n.findVersion),n.which("composer").then(n.condensePath)]).then(function(e3){return n.determineFound("Composer",e3[0],e3[1])})},getGradleInfo:function(){return n.log("trace","getGradleInfo"),Promise.all([n.run("gradle --version").then(n.findVersion),n.which("gradle").then(n.condensePath)]).then(function(e3){return n.determineFound("Gradle",e3[0],e3[1])})},getHomebrewInfo:function(){return n.log("trace","getHomebrewInfo"),n.isMacOS||n.isLinux?Promise.all([n.run("brew --version").then(n.findVersion),n.which("brew")]).then(function(e3){return n.determineFound("Homebrew",e3[0],e3[1])}):Promise.all(["Homebrew","N/A"])},getMavenInfo:function(){return n.log("trace","getMavenInfo"),Promise.all([n.run("mvn --version").then(n.findVersion),n.which("mvn").then(n.condensePath)]).then(function(e3){return n.determineFound("Maven",e3[0],e3[1])})},getpip2Info:function(){return n.log("trace","getpip2Info"),Promise.all([n.run("pip2 --version").then(n.findVersion),n.which("pip2").then(n.condensePath)]).then(function(e3){return n.determineFound("pip2",e3[0],e3[1])})},getpip3Info:function(){return n.log("trace","getpip3Info"),Promise.all([n.run("pip3 --version").then(n.findVersion),n.which("pip3").then(n.condensePath)]).then(function(e3){return n.determineFound("pip3",e3[0],e3[1])})},getRubyGemsInfo:function(){return n.log("trace","getRubyGemsInfo"),Promise.all([n.run("gem --version").then(n.findVersion),n.which("gem")]).then(function(e3){return n.determineFound("RubyGems",e3[0],e3[1])})},getYumInfo:function(){return n.log("trace","getYumInfo"),n.isLinux?Promise.all([n.run("yum --version").then(n.findVersion),n.which("yum")]).then(function(e3){return n.determineFound("Yum",e3[0],e3[1])}):Promise.all(["Yum","N/A"])}}},2060:(e2,t8,r2)=>{"use strict";r2(5888);var n=r2(224),o=r2(7072);e2.exports={getYarnWorkspacesInfo:function(){return n.log("trace","getYarnWorkspacesInfo"),Promise.all([n.run("yarn -v"),n.getPackageJsonByPath("package.json").then(function(e3){return e3&&"workspaces"in e3})]).then(function(e3){var t9="Yarn Workspaces";return e3[0]&&e3[1]?Promise.resolve([t9,e3[0]]):Promise.resolve([t9,"Not Found"])})},getLernaInfo:function(){return n.log("trace","getLernaInfo"),Promise.all([n.getPackageJsonByName("lerna").then(function(e3){return e3&&e3.version}),n.fileExists(o.join(process.cwd(),"lerna.json"))]).then(function(e3){var t9="Lerna";return e3[0]&&e3[1]?Promise.resolve([t9,e3[0]]):Promise.resolve([t9,"Not Found"])})}}},7508:(e2,t8,r2)=>{"use strict";r2(4880),r2(5888),r2(3708);var n=r2(2058),o=r2(7072),i=r2(224);e2.exports={getAndroidSDKInfo:function(){return i.run("sdkmanager --list").then(function(e3){return!e3&&process.env.ANDROID_HOME?i.run(`${process.env.ANDROID_HOME}/tools/bin/sdkmanager --list`):e3}).then(function(e3){return!e3&&process.env.ANDROID_HOME?i.run(`${process.env.ANDROID_HOME}/cmdline-tools/latest/bin/sdkmanager --list`):e3}).then(function(e3){return!e3&&i.isMacOS?i.run("~/Library/Android/sdk/tools/bin/sdkmanager --list"):e3}).then(function(e3){var t9=i.parseSDKManagerOutput(e3),r3=function(e4){var t10,r4=o.join(e4,"source.properties");try{t10=n.readFileSync(r4,"utf8")}catch(e5){if(e5.code==="ENOENT")return;throw e5}for(var i2=t10.split(`
|
|
16
|
+
`),s2=0;s2<i2.length;s2+=1){var a=i2[s2].split("=");if(a.length===2&&a[0].trim()==="Pkg.Revision")return a[1].trim()}},s=process.env.ANDROID_NDK?r3(process.env.ANDROID_NDK):process.env.ANDROID_NDK_HOME?r3(process.env.ANDROID_NDK_HOME):process.env.ANDROID_HOME?r3(o.join(process.env.ANDROID_HOME,"ndk-bundle")):void 0;return t9.buildTools.length||t9.apiLevels.length||t9.systemImages.length||s?Promise.resolve(["Android SDK",{"API Levels":t9.apiLevels||i.NotFound,"Build Tools":t9.buildTools||i.NotFound,"System Images":t9.systemImages||i.NotFound,"Android NDK":s||i.NotFound}]):Promise.resolve(["Android SDK",i.NotFound])})},getiOSSDKInfo:function(){return i.isMacOS?i.run("xcodebuild -showsdks").then(function(e3){return e3.match(/[\w]+\s[\d|.]+/g)}).then(i.uniq).then(function(e3){return e3.length?["iOS SDK",{Platforms:e3}]:["iOS SDK",i.NotFound]}):Promise.resolve(["iOS SDK","N/A"])},getWindowsSDKInfo:function(){if(i.log("trace","getWindowsSDKInfo"),i.isWindows){var e3=i.NotFound;return i.run("reg query HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\AppModelUnlock").then(function(t9){e3=t9.split(/[\r\n]/g).slice(1).filter(function(e4){return e4!==""}).reduce(function(e4,t10){var r4=t10.match(/[^\s]+/g);return r4[2]!=="0x0"&&r4[2]!=="0x1"||(r4[2]=r4[2]==="0x1"?"Enabled":"Disabled"),e4[r4[0]]=r4[2],e4},{}),Object.keys(e3).length===0&&(e3=i.NotFound);try{var r3=n.readdirSync(`${process.env["ProgramFiles(x86)"]}/Windows Kits/10/Platforms/UAP`);e3.Versions=r3}catch{}return Promise.resolve(["Windows SDK",e3])})}return Promise.resolve(["Windows SDK",i.NA])}}},9284:(e2,t8,r2)=>{"use strict";r2(5888);var n=r2(224);e2.exports={getApacheInfo:function(){return n.log("trace","getApacheInfo"),n.isMacOS||n.isLinux?Promise.all([n.run("apachectl -v").then(n.findVersion),n.run("which apachectl")]).then(function(e3){return n.determineFound("Apache",e3[0],e3[1])}):Promise.resolve(["Apache","N/A"])},getNginxInfo:function(){return n.log("trace","getNginxInfo"),n.isMacOS||n.isLinux?Promise.all([n.run("nginx -v 2>&1").then(n.findVersion),n.run("which nginx")]).then(function(e3){return n.determineFound("Nginx",e3[0],e3[1])}):Promise.resolve(["Nginx","N/A"])}}},8144:(e2,t8,r2)=>{"use strict";r2(3708),r2(4880),r2(5888);var n=r2(2288),o=r2(224),i=r2(8558);e2.exports={getContainerInfo:function(){return o.log("trace","getContainerInfo"),o.isLinux?Promise.all([o.fileExists("/.dockerenv"),o.readFile("/proc/self/cgroup")]).then(function(e3){return o.log("trace","getContainerInfoThen",e3),Promise.resolve(["Container",e3[0]||e3[1]?"Yes":"N/A"])}).catch(function(e3){return o.log("trace","getContainerInfoCatch",e3)}):Promise.resolve(["Container","N/A"])},getCPUInfo:function(){var e3;o.log("trace","getCPUInfo");try{var t9=i.cpus();e3="("+t9.length+") "+i.arch()+" "+t9[0].model}catch{e3="Unknown"}return Promise.all(["CPU",e3])},getMemoryInfo:function(){return o.log("trace","getMemoryInfo"),Promise.all(["Memory",`${o.toReadableBytes(i.freemem())} / ${o.toReadableBytes(i.totalmem())}`])},getOSInfo:function(){var e3,t9;if(o.log("trace","getOSInfo"),o.isMacOS)e3=o.run("sw_vers -productVersion ");else if(o.isLinux)e3=o.run("cat /etc/os-release").then(function(e4){var t10=(e4||"").match(/NAME="(.+)"/)||"",r4=(e4||"").match(/VERSION="(.+)"/)||["",""],n2=r4!==null?r4[1]:"";return`${t10[1]} ${n2}`.trim()||""});else if(o.isWindows){e3=Promise.resolve(i.release());var r3=i.release().split(".");r3[0]==="10"&&r3[1]==="0"&&r3[2]>=22e3&&(t9="Windows 11")}else e3=Promise.resolve();return e3.then(function(e4){return t9=t9||n(i.platform(),i.release()),e4&&(t9+=` ${e4}`),["OS",t9]})},getShellInfo:function(){if(o.log("trace","getShellInfo",process.env),o.isMacOS||o.isLinux){var e3=process.env.SHELL||o.runSync("getent passwd $LOGNAME | cut -d: -f7 | head -1"),t9=`${e3} --version 2>&1`;return e3.match("/bin/ash")&&(t9=`${e3} --help 2>&1`),Promise.all([o.run(t9).then(o.findVersion),o.which(e3)]).then(function(e4){return o.determineFound("Shell",e4[0]||"Unknown",e4[1])})}return Promise.resolve(["Shell","N/A"])},getGLibcInfo:function(){return o.log("trace","getGLibc"),o.isLinux?Promise.all([o.run("ldd --version").then(o.findVersion)]).then(function(e3){return o.determineFound("GLibc",e3[0]||"Unknown")}):Promise.resolve(["GLibc","N/A"])}}},5882:(e2,t8,r2)=>{"use strict";r2(5888);var n=r2(224);e2.exports={getBazelInfo:function(){return n.log("trace","getBazelInfo"),Promise.all([n.run("bazel --version").then(n.findVersion),n.run("which bazel")]).then(function(e3){return n.determineFound("Bazel",e3[0],e3[1])})},getCMakeInfo:function(){return n.log("trace","getCMakeInfo"),Promise.all([n.run("cmake --version").then(n.findVersion),n.run("which cmake")]).then(function(e3){return n.determineFound("CMake",e3[0],e3[1])})},getGCCInfo:function(){return n.log("trace","getGCCInfo"),n.isMacOS||n.isLinux?Promise.all([n.run("gcc -v 2>&1").then(n.findVersion),n.run("which gcc")]).then(function(e3){return n.determineFound("GCC",e3[0],e3[1])}):Promise.resolve(["GCC","N/A"])},getClangInfo:function(){return n.log("trace","getClangInfo"),Promise.all([n.run("clang --version").then(n.findVersion),n.which("clang")]).then(function(e3){return n.determineFound("Clang",e3[0],e3[1])})},getGitInfo:function(){return n.log("trace","getGitInfo"),Promise.all([n.run("git --version").then(n.findVersion),n.run("which git")]).then(function(e3){return n.determineFound("Git",e3[0],e3[1])})},getMakeInfo:function(){return n.log("trace","getMakeInfo"),n.isMacOS||n.isLinux?Promise.all([n.run("make --version").then(n.findVersion),n.run("which make")]).then(function(e3){return n.determineFound("Make",e3[0],e3[1])}):Promise.resolve(["Make","N/A"])},getNinjaInfo:function(){return n.log("trace","getNinjaInfo"),Promise.all([n.run("ninja --version").then(n.findVersion),n.run("which ninja")]).then(function(e3){return n.determineFound("Ninja",e3[0],e3[1])})},getMercurialInfo:function(){return n.log("trace","getMercurialInfo"),n.isMacOS||n.isLinux?Promise.all([n.run("hg --version").then(n.findVersion),n.run("which hg")]).then(function(e3){return n.determineFound("Mercurial",e3[0],e3[1])}):Promise.resolve(["Mercurial","N/A"])},getSubversionInfo:function(){return n.log("trace","getSubversionInfo"),n.isMacOS||n.isLinux?Promise.all([n.run("svn --version").then(n.findVersion),n.run("which svn")]).then(function(e3){return n.determineFound("Subversion",e3[0],e3[1])}):Promise.resolve(["Subversion","N/A"])},getFFmpegInfo:function(){return n.log("trace","getFFmpegInfo"),Promise.all([n.run("ffmpeg -version").then(n.findVersion),n.which("ffmpeg")]).then(function(e3){return n.determineFound("FFmpeg",e3[0],e3[1])})},getCurlInfo:function(){return n.log("trace","getCurlInfo"),Promise.all([n.run("curl --version").then(n.findVersion),n.which("curl")]).then(function(e3){return n.determineFound("Curl",e3[0],e3[1])})},getOpenSSLInfo:function(){return n.log("trace","getOpenSSLInfo"),Promise.all([n.run("openssl version").then(n.findVersion),n.which("openssl")]).then(function(e3){return n.determineFound("OpenSSL",e3[0],e3[1])})}}},9676:(e2,t8,r2)=>{"use strict";r2(5888);var n=r2(224);e2.exports={getDockerInfo:function(){return n.log("trace","getDockerInfo"),Promise.all([n.run("docker --version").then(n.findVersion),n.which("docker")]).then(function(e3){return n.determineFound("Docker",e3[0],e3[1])})},getDockerComposeInfo:function(){return n.log("trace","getDockerComposeInfo"),Promise.all([n.run("docker-compose --version").then(n.findVersion),n.which("docker-compose")]).then(function(e3){return n.determineFound("Docker Compose",e3[0],e3[1])})},getParallelsInfo:function(){return n.log("trace","getParallelsInfo"),Promise.all([n.run("prlctl --version").then(n.findVersion),n.which("prlctl")]).then(function(e3){return n.determineFound("Parallels",e3[0],e3[1])})},getPodmanInfo:function(){return n.log("trace","getPodmanInfo"),Promise.all([n.run("podman --version").then(n.findVersion),n.which("podman")]).then(function(e3){return n.determineFound("Podman",e3[0],e3[1])})},getVirtualBoxInfo:function(){return n.log("trace","getVirtualBoxInfo"),Promise.all([n.run("vboxmanage --version").then(n.findVersion),n.which("vboxmanage")]).then(function(e3){return n.determineFound("VirtualBox",e3[0],e3[1])})},getVMwareFusionInfo:function(){return n.log("trace","getVMwareFusionInfo"),n.getDarwinApplicationVersion("com.vmware.fusion").then(function(e3){return n.determineFound("VMWare Fusion",e3,"N/A")})}}},6032:e2=>{"use strict";e2.exports={androidSystemImages:/system-images;([\S \t]+)/g,androidAPILevels:/platforms;android-(\d+)[\S\s]/g,androidBuildTools:/build-tools;([\d|.]+)[\S\s]/g}},6304:(e2,t8,r2)=>{"use strict";r2(4880),r2(5584),r2(5888),r2(7360),r2(3708);var n=r2(808),o=r2(7072),i=r2(224),s=function(e3){var t9=e3.split("node_modules"+o.sep),r3=t9[t9.length-1];return r3.charAt(0)==="@"?[r3.split(o.sep)[0],r3.split(o.sep)[1]].join("/"):r3.split(o.sep)[0]};e2.exports={getnpmPackages:function(e3,t9){i.log("trace","getnpmPackages"),t9||(t9={});var r3=null,n2=null;return typeof e3=="string"&&(e3.includes("*")||e3.includes("?")||e3.includes("+")||e3.includes("!")?r3=e3:e3=e3.split(",")),Promise.all(["npmPackages",i.getPackageJsonByPath("package.json").then(function(e4){return Object.assign({},(e4||{}).devDependencies||{},(e4||{}).dependencies||{})}).then(function(e4){return n2=e4,t9.fullTree||t9.duplicates||r3?i.getAllPackageJsonPaths(r3):Promise.resolve(Object.keys(e4||[]).map(function(e5){return o.join("node_modules",e5,"package.json")}))}).then(function(o2){return!r3&&typeof e3!="boolean"||t9.fullTree?Array.isArray(e3)?Promise.resolve((o2||[]).filter(function(t10){return e3.includes(s(t10))})):Promise.resolve(o2):Promise.resolve((o2||[]).filter(function(e4){return Object.keys(n2||[]).includes(s(e4))}))}).then(function(e4){return Promise.all([e4,Promise.all(e4.map(function(e5){return i.getPackageJsonByPath(e5)}))])}).then(function(e4){var r4=e4[0],o2=e4[1].reduce(function(e5,n3,o3){return n3&&n3.name&&(e5[n3.name]||(e5[n3.name]={}),t9.duplicates&&(e5[n3.name].duplicates=i.uniq((e5[n3.name].duplicates||[]).concat(n3.version))),(r4[o3].match(/node_modules/g)||[]).length===1&&(e5[n3.name].installed=n3.version)),e5},{});return Object.keys(o2).forEach(function(e5){o2[e5].duplicates&&o2[e5].installed&&(o2[e5].duplicates=o2[e5].duplicates.filter(function(t10){return t10!==o2[e5].installed})),n2[e5]&&(o2[e5].wanted=n2[e5])}),o2}).then(function(r4){return t9.showNotFound&&Array.isArray(e3)&&e3.forEach(function(e4){r4[e4]||(r4[e4]="Not Found")}),r4}).then(function(e4){return i.sortObject(e4)})])},getnpmGlobalPackages:function(e3,t9){i.log("trace","getnpmGlobalPackages",e3);var r3=null;return typeof e3=="string"?e3.includes("*")||e3.includes("?")||e3.includes("+")||e3.includes("!")?r3=e3:e3=e3.split(","):Array.isArray(e3)||(e3=!0),Promise.all(["npmGlobalPackages",i.run("npm get prefix --global").then(function(e4){return new Promise(function(t10,s2){return n(o.join(e4,i.isWindows?"":"lib","node_modules",r3||"{*,@*/*}","package.json"),function(e5,r4){e5||t10(r4),s2(e5)})})}).then(function(t10){return Promise.all(t10.filter(function(t11){return typeof e3=="boolean"||r3!==null||e3.includes(s(t11))}).map(function(e4){return i.getPackageJsonByFullPath(e4)}))}).then(function(e4){return e4.reduce(function(e5,t10){return t10?Object.assign(e5,{[t10.name]:t10.version}):e5},{})}).then(function(r4){return t9.showNotFound&&Array.isArray(e3)&&e3.forEach(function(e4){r4[e4]||(r4[e4]="Not Found")}),r4})])}}},5088:e2=>{"use strict";e2.exports={defaults:{System:["OS","CPU","Memory","Container","Shell"],Binaries:["Node","Yarn","npm","pnpm","bun","Watchman"],Managers:["Apt","Cargo","CocoaPods","Composer","Gradle","Homebrew","Maven","pip2","pip3","RubyGems","Yum"],Utilities:["Bazel","CMake","Make","GCC","Git","Clang","Ninja","Mercurial","Subversion","FFmpeg","Curl","OpenSSL"],Servers:["Apache","Nginx"],Virtualization:["Docker","Docker Compose","Parallels","VirtualBox","VMware Fusion"],SDKs:["iOS SDK","Android SDK","Windows SDK"],IDEs:["Android Studio","Atom","Emacs","IntelliJ","NVim","Nano","PhpStorm","Sublime Text","VSCode","Visual Studio","Vim","WebStorm","Xcode"],Languages:["Bash","Go","Elixir","Erlang","Java","Perl","PHP","Protoc","Python","Python3","R","Ruby","Rust","Scala"],Databases:["MongoDB","MySQL","PostgreSQL","SQLite"],Browsers:["Brave Browser","Chrome","Chrome Canary","Chromium","Edge","Firefox","Firefox Developer Edition","Firefox Nightly","Internet Explorer","Safari","Safari Technology Preview"],Monorepos:["Yarn Workspaces","Lerna"],npmPackages:null,npmGlobalPackages:null},cssnano:{System:["OS","CPU"],Binaries:["Node","Yarn","npm","pnpm","bun"],npmPackages:["cssnano","postcss"],options:{duplicates:!0}},jest:{System:["OS","CPU"],Binaries:["Node","Yarn","npm","pnpm","bun"],npmPackages:["jest"]},"react-native":{System:["OS","CPU"],Binaries:["Node","Yarn","npm","pnpm","bun","Watchman"],SDKs:["iOS SDK","Android SDK","Windows SDK"],IDEs:["Android Studio","Xcode","Visual Studio"],npmPackages:["react","react-native"],npmGlobalPackages:["react-native-cli"]},nyc:{System:["OS","CPU","Memory"],Binaries:["Node","Yarn","npm","pnpm","bun"],npmPackages:"/**/{*babel*,@babel/*/,*istanbul*,nyc,source-map-support,typescript,ts-node}"},webpack:{System:["OS","CPU"],Binaries:["Node","Yarn","npm","pnpm","bun"],npmPackages:"*webpack*",npmGlobalPackages:["webpack","webpack-cli"]},"styled-components":{System:["OS","CPU"],Binaries:["Node","Yarn","npm","pnpm","bun"],Browsers:["Chrome","Firefox","Safari"],npmPackages:"*styled-components*"},"create-react-app":{System:["OS","CPU"],Binaries:["Node","npm","Yarn","pnpm","bun"],Browsers:["Chrome","Edge","Internet Explorer","Firefox","Safari"],npmPackages:["react","react-dom","react-scripts"],npmGlobalPackages:["create-react-app"],options:{duplicates:!0,showNotFound:!0}},apollo:{System:["OS"],Binaries:["Node","npm","Yarn","pnpm","bun"],Browsers:["Chrome","Edge","Firefox","Safari"],npmPackages:"{*apollo*,@apollo/*}",npmGlobalPackages:"{*apollo*,@apollo/*}"},"react-native-web":{System:["OS","CPU"],Binaries:["Node","npm","Yarn","pnpm","bun"],Browsers:["Chrome","Edge","Internet Explorer","Firefox","Safari"],npmPackages:["react","react-native-web"],options:{showNotFound:!0}},babel:{System:["OS"],Binaries:["Node","npm","Yarn","pnpm","bun"],Monorepos:["Yarn Workspaces","Lerna"],npmPackages:"{*babel*,@babel/*,eslint,webpack,create-react-app,react-native,lerna,jest,next,rollup}"},playwright:{System:["OS","CPU","Memory","Container"],Binaries:["Node","Yarn","npm","pnpm","bun"],Languages:["Bash"],IDEs:["VSCode"],npmPackages:"{playwright*,@playwright/*}"}}},224:(e2,t8,r2)=>{"use strict";r2(4880),r2(4260),r2(5584),r2(7276),r2(4228),r2(3708),r2(8412),r2(5308),r2(6568),r2(5888);var n=r2(7072),o=r2(2058),i=r2(8558),s=r2(4368),a=r2(8460),c=r2(808),u=r2(6032),l=function(e3){var t9=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{}).unify,r3=t9!==void 0&&t9;return new Promise(function(t10){s.exec(e3,{stdio:[0,"pipe","ignore"]},function(e4,n2,o2){var i2;i2=r3?n2.toString()+o2.toString():n2.toString(),t10((e4?"":i2).trim())})})},f=function(e3){var t9=Object.values(Array.prototype.slice.call(arguments).slice(1));(process.env.ENVINFO_DEBUG||"").toLowerCase()===e3&&console.log(e3,JSON.stringify(t9))},p=function(e3){return new Promise(function(t9){o.readFile(e3,"utf8",function(e4,r3){return t9(r3||null)})})},h=function(e3){return p(e3).then(function(e4){return e4?JSON.parse(e4):null})},d=/\d+\.[\d+|.]+/g,m=function(e3){f("trace","findDarwinApplication",e3);var t9=`mdfind "kMDItemCFBundleIdentifier=='${e3}'"`;return f("trace",t9),l(t9).then(function(e4){return e4.replace(/(\s)/g,"\\ ")})},g=function(e3,t9){var r3=(t9||["CFBundleShortVersionString"]).map(function(e4){return"-c Print:"+e4});return["/usr/libexec/PlistBuddy"].concat(r3).concat([e3]).join(" ")},v=function(e3,t9){for(var r3=[],n2=null;(n2=e3.exec(t9))!==null;)r3.push(n2);return r3};e2.exports={run:l,log:f,fileExists:function(e3){return new Promise(function(t9){o.stat(e3,function(r3){return t9(r3?null:e3)})})},windowsExeExists:function(e3){return new Promise(function(t9){var r3;o.access(r3=n.join(process.env.ProgramFiles,`${e3}`),o.constants.R_OK,function(i2){i2?o.access(r3=n.join(process.env["ProgramFiles(x86)"],`${e3}`),o.constants.X_OK,function(e4){t9(e4?null:r3)}):t9(r3)})})},readFile:p,requireJson:h,versionRegex:d,findDarwinApplication:m,generatePlistBuddyCommand:g,matchAll:v,parseSDKManagerOutput:function(e3){var t9=e3.split("Available")[0];return{apiLevels:v(u.androidAPILevels,t9).map(function(e4){return e4[1]}),buildTools:v(u.androidBuildTools,t9).map(function(e4){return e4[1]}),systemImages:v(u.androidSystemImages,t9).map(function(e4){return e4[1].split("|").map(function(e5){return e5.trim()})}).map(function(e4){return e4[0].split(";")[0]+" | "+e4[2].split(" System Image")[0]})}},isLinux:process.platform==="linux",isMacOS:process.platform==="darwin",NA:"N/A",NotFound:"Not Found",isWindows:process.platform.startsWith("win"),isObject:function(e3){return typeof e3=="object"&&!Array.isArray(e3)},noop:function(e3){return e3},pipe:function(e3){return function(t9){return e3.reduce(function(e4,t10){return t10(e4)},t9)}},browserBundleIdentifiers:{"Brave Browser":"com.brave.Browser",Chrome:"com.google.Chrome","Chrome Canary":"com.google.Chrome.canary",Firefox:"org.mozilla.firefox","Firefox Developer Edition":"org.mozilla.firefoxdeveloperedition","Firefox Nightly":"org.mozilla.nightly","Microsoft Edge":"com.microsoft.edgemac",Safari:"com.apple.Safari","Safari Technology Preview":"com.apple.SafariTechnologyPreview"},ideBundleIdentifiers:{Atom:"com.github.atom",IntelliJ:"com.jetbrains.intellij",PhpStorm:"com.jetbrains.PhpStorm","Sublime Text":"com.sublimetext.3",WebStorm:"com.jetbrains.WebStorm"},runSync:function(e3){return(s.execSync(e3,{stdio:[0,"pipe","ignore"]}).toString()||"").trim()},which:function(e3){return new Promise(function(t9){return a(e3,function(e4,r3){return t9(r3)})})},getDarwinApplicationVersion:function(e3){var t9;return f("trace","getDarwinApplicationVersion",e3),t9=process.platform!=="darwin"?"N/A":m(e3).then(function(e4){return l(g(n.join(e4,"Contents","Info.plist"),["CFBundleShortVersionString"]))}),Promise.resolve(t9)},uniq:function(e3){return Array.from(new Set(e3))},toReadableBytes:function(e3){var t9=Math.floor(Math.log(e3)/Math.log(1024));return e3?(e3/Math.pow(1024,t9)).toFixed(2)+" "+["B","KB","MB","GB","TB","PB"][t9]:"0 Bytes"},omit:function(e3,t9){return Object.keys(e3).filter(function(e4){return t9.indexOf(e4)<0}).reduce(function(t10,r3){return Object.assign(t10,{[r3]:e3[r3]})},{})},pick:function(e3,t9){return Object.keys(e3).filter(function(e4){return t9.indexOf(e4)>=0}).reduce(function(t10,r3){return Object.assign(t10,{[r3]:e3[r3]})},{})},getPackageJsonByName:function(e3){return h(n.join(process.cwd(),"node_modules",e3,"package.json"))},getPackageJsonByPath:function(e3){return h(n.join(process.cwd(),e3))},getPackageJsonByFullPath:function(e3){return f("trace","getPackageJsonByFullPath",e3),h(e3)},getAllPackageJsonPaths:function(e3){return f("trace","getAllPackageJsonPaths",e3),new Promise(function(t9){return c(e3?n.join("node_modules",e3,"package.json"):n.join("node_modules","**","package.json"),function(e4,r3){return t9(r3.map(n.normalize)||[])})})},sortObject:function(e3){return Object.keys(e3).sort().reduce(function(t9,r3){return t9[r3]=e3[r3],t9},{})},findVersion:function(e3,t9,r3){f("trace","findVersion",e3,t9,r3);var n2=r3||0,o2=t9||d,i2=e3.match(o2);return i2?i2[n2]:e3},condensePath:function(e3){return(e3||"").replace(i.homedir(),"~")},determineFound:function(e3,t9,r3){return f("trace","determineFound",e3,t9,r3),t9==="N/A"?Promise.resolve([e3,"N/A"]):t9&&Object.keys(t9).length!==0?r3?Promise.resolve([e3,t9,r3]):Promise.resolve([e3,t9]):Promise.resolve([e3,"Not Found"])}}},9016:e2=>{"use strict";function t8(e3,t9,o){e3 instanceof RegExp&&(e3=r2(e3,o)),t9 instanceof RegExp&&(t9=r2(t9,o));var i=n(e3,t9,o);return i&&{start:i[0],end:i[1],pre:o.slice(0,i[0]),body:o.slice(i[0]+e3.length,i[1]),post:o.slice(i[1]+t9.length)}}function r2(e3,t9){var r3=t9.match(e3);return r3?r3[0]:null}function n(e3,t9,r3){var n2,o,i,s,a,c=r3.indexOf(e3),u=r3.indexOf(t9,c+1),l=c;if(c>=0&&u>0){for(n2=[],i=r3.length;l>=0&&!a;)l==c?(n2.push(l),c=r3.indexOf(e3,l+1)):n2.length==1?a=[n2.pop(),u]:((o=n2.pop())<i&&(i=o,s=u),u=r3.indexOf(t9,l+1)),l=c<u&&c>=0?c:u;n2.length&&(a=[i,s])}return a}e2.exports=t8,t8.range=n},1620:(e2,t8,r2)=>{var n=r2(6596),o=r2(9016);e2.exports=function(e3){return e3?(e3.substr(0,2)==="{}"&&(e3="\\{\\}"+e3.substr(2)),v(function(e4){return e4.split("\\\\").join(i).split("\\{").join(s).split("\\}").join(a).split("\\,").join(c).split("\\.").join(u)}(e3),!0).map(f)):[]};var i="\0SLASH"+Math.random()+"\0",s="\0OPEN"+Math.random()+"\0",a="\0CLOSE"+Math.random()+"\0",c="\0COMMA"+Math.random()+"\0",u="\0PERIOD"+Math.random()+"\0";function l(e3){return parseInt(e3,10)==e3?parseInt(e3,10):e3.charCodeAt(0)}function f(e3){return e3.split(i).join("\\").split(s).join("{").split(a).join("}").split(c).join(",").split(u).join(".")}function p(e3){if(!e3)return[""];var t9=[],r3=o("{","}",e3);if(!r3)return e3.split(",");var n2=r3.pre,i2=r3.body,s2=r3.post,a2=n2.split(",");a2[a2.length-1]+="{"+i2+"}";var c2=p(s2);return s2.length&&(a2[a2.length-1]+=c2.shift(),a2.push.apply(a2,c2)),t9.push.apply(t9,a2),t9}function h(e3){return"{"+e3+"}"}function d(e3){return/^-?0\d/.test(e3)}function m(e3,t9){return e3<=t9}function g(e3,t9){return e3>=t9}function v(e3,t9){var r3=[],i2=o("{","}",e3);if(!i2||/\$$/.test(i2.pre))return[e3];var s2,c2=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(i2.body),u2=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(i2.body),f2=c2||u2,y=i2.body.indexOf(",")>=0;if(!f2&&!y)return i2.post.match(/,.*\}/)?v(e3=i2.pre+"{"+i2.body+a+i2.post):[e3];if(f2)s2=i2.body.split(/\.\./);else if((s2=p(i2.body)).length===1&&(s2=v(s2[0],!1).map(h)).length===1)return(x=i2.post.length?v(i2.post,!1):[""]).map(function(e4){return i2.pre+s2[0]+e4});var b,w=i2.pre,x=i2.post.length?v(i2.post,!1):[""];if(f2){var S=l(s2[0]),P=l(s2[1]),O=Math.max(s2[0].length,s2[1].length),I=s2.length==3?Math.abs(l(s2[2])):1,E=m;P<S&&(I*=-1,E=g);var j=s2.some(d);b=[];for(var _=S;E(_,P);_+=I){var A;if(u2)(A=String.fromCharCode(_))==="\\"&&(A="");else if(A=String(_),j){var k=O-A.length;if(k>0){var N=new Array(k+1).join("0");A=_<0?"-"+N+A.slice(1):N+A}}b.push(A)}}else b=n(s2,function(e4){return v(e4,!1)});for(var F=0;F<b.length;F++)for(var C=0;C<x.length;C++){var M=w+b[F]+x[C];(!t9||f2||M)&&r3.push(M)}return r3}},6596:e2=>{e2.exports=function(e3,r2){for(var n=[],o=0;o<e3.length;o++){var i=r2(e3[o],o);t8(i)?n.push.apply(n,i):n.push(i)}return n};var t8=Array.isArray||function(e3){return Object.prototype.toString.call(e3)==="[object Array]"}},2016:e2=>{e2.exports=function(e3){if(typeof e3!="function")throw TypeError(e3+" is not a function!");return e3}},7384:(e2,t8,r2)=>{var n=r2(7096)("unscopables"),o=Array.prototype;o[n]==null&&r2(2336)(o,n,{}),e2.exports=function(e3){o[n][e3]=!0}},2388:e2=>{e2.exports=function(e3,t8,r2,n){if(!(e3 instanceof t8)||n!==void 0&&n in e3)throw TypeError(r2+": incorrect invocation!");return e3}},3504:(e2,t8,r2)=>{var n=r2(3888);e2.exports=function(e3){if(!n(e3))throw TypeError(e3+" is not an object!");return e3}},7504:(e2,t8,r2)=>{var n=r2(2780),o=r2(3528),i=r2(8508);e2.exports=function(e3){return function(t9,r3,s){var a,c=n(t9),u=o(c.length),l=i(s,u);if(e3&&r3!=r3){for(;u>l;)if((a=c[l++])!=a)return!0}else for(;u>l;l++)if((e3||l in c)&&c[l]===r3)return e3||l||0;return!e3&&-1}}},5848:(e2,t8,r2)=>{var n=r2(6924),o=r2(7096)("toStringTag"),i=n(function(){return arguments}())=="Arguments";e2.exports=function(e3){var t9,r3,s;return e3===void 0?"Undefined":e3===null?"Null":typeof(r3=function(e4,t10){try{return e4[t10]}catch{}}(t9=Object(e3),o))=="string"?r3:i?n(t9):(s=n(t9))=="Object"&&typeof t9.callee=="function"?"Arguments":s}},6924:e2=>{var t8={}.toString;e2.exports=function(e3){return t8.call(e3).slice(8,-1)}},148:(e2,t8,r2)=>{"use strict";var n=r2(8520).f,o=r2(3472),i=r2(7704),s=r2(800),a=r2(2388),c=r2(7228),u=r2(6952),l=r2(172),f=r2(3384),p=r2(1668),h=r2(2020).fastKey,d=r2(2772),m=p?"_s":"size",g=function(e3,t9){var r3,n2=h(t9);if(n2!=="F")return e3._i[n2];for(r3=e3._f;r3;r3=r3.n)if(r3.k==t9)return r3};e2.exports={getConstructor:function(e3,t9,r3,u2){var l2=e3(function(e4,n2){a(e4,l2,t9,"_i"),e4._t=t9,e4._i=o(null),e4._f=void 0,e4._l=void 0,e4[m]=0,n2!=null&&c(n2,r3,e4[u2],e4)});return i(l2.prototype,{clear:function(){for(var e4=d(this,t9),r4=e4._i,n2=e4._f;n2;n2=n2.n)n2.r=!0,n2.p&&(n2.p=n2.p.n=void 0),delete r4[n2.i];e4._f=e4._l=void 0,e4[m]=0},delete:function(e4){var r4=d(this,t9),n2=g(r4,e4);if(n2){var o2=n2.n,i2=n2.p;delete r4._i[n2.i],n2.r=!0,i2&&(i2.n=o2),o2&&(o2.p=i2),r4._f==n2&&(r4._f=o2),r4._l==n2&&(r4._l=i2),r4[m]--}return!!n2},forEach:function(e4){d(this,t9);for(var r4,n2=s(e4,arguments.length>1?arguments[1]:void 0,3);r4=r4?r4.n:this._f;)for(n2(r4.v,r4.k,this);r4&&r4.r;)r4=r4.p},has:function(e4){return!!g(d(this,t9),e4)}}),p&&n(l2.prototype,"size",{get:function(){return d(this,t9)[m]}}),l2},def:function(e3,t9,r3){var n2,o2,i2=g(e3,t9);return i2?i2.v=r3:(e3._l=i2={i:o2=h(t9,!0),k:t9,v:r3,p:n2=e3._l,n:void 0,r:!1},e3._f||(e3._f=i2),n2&&(n2.n=i2),e3[m]++,o2!=="F"&&(e3._i[o2]=i2)),e3},getEntry:g,setStrong:function(e3,t9,r3){u(e3,t9,function(e4,r4){this._t=d(e4,t9),this._k=r4,this._l=void 0},function(){for(var e4=this,t10=e4._k,r4=e4._l;r4&&r4.r;)r4=r4.p;return e4._t&&(e4._l=r4=r4?r4.n:e4._t._f)?l(0,t10=="keys"?r4.k:t10=="values"?r4.v:[r4.k,r4.v]):(e4._t=void 0,l(1))},r3?"entries":"values",!r3,!0),f(t9)}}},9412:(e2,t8,r2)=>{"use strict";var n=r2(2804),o=r2(7076),i=r2(8868),s=r2(7704),a=r2(2020),c=r2(7228),u=r2(2388),l=r2(3888),f=r2(9316),p=r2(8380),h=r2(6256),d=r2(2672);e2.exports=function(e3,t9,r3,m,g,v){var y=n[e3],b=y,w=g?"set":"add",x=b&&b.prototype,S={},P=function(e4){var t10=x[e4];i(x,e4,e4=="delete"||e4=="has"?function(e5){return!(v&&!l(e5))&&t10.call(this,e5===0?0:e5)}:e4=="get"?function(e5){return v&&!l(e5)?void 0:t10.call(this,e5===0?0:e5)}:e4=="add"?function(e5){return t10.call(this,e5===0?0:e5),this}:function(e5,r4){return t10.call(this,e5===0?0:e5,r4),this})};if(typeof b=="function"&&(v||x.forEach&&!f(function(){new b().entries().next()}))){var O=new b,I=O[w](v?{}:-0,1)!=O,E=f(function(){O.has(1)}),j=p(function(e4){new b(e4)}),_=!v&&f(function(){for(var e4=new b,t10=5;t10--;)e4[w](t10,t10);return!e4.has(-0)});j||((b=t9(function(t10,r4){u(t10,b,e3);var n2=d(new y,t10,b);return r4!=null&&c(r4,g,n2[w],n2),n2})).prototype=x,x.constructor=b),(E||_)&&(P("delete"),P("has"),g&&P("get")),(_||I)&&P(w),v&&x.clear&&delete x.clear}else b=m.getConstructor(t9,e3,g,w),s(b.prototype,r3),a.NEED=!0;return h(b,e3),S[e3]=b,o(o.G+o.W+o.F*(b!=y),S),v||m.setStrong(b,e3,g),b}},8432:e2=>{var t8=e2.exports={version:"2.5.7"};typeof __e=="number"&&(__e=t8)},2340:(e2,t8,r2)=>{"use strict";var n=r2(8520),o=r2(8164);e2.exports=function(e3,t9,r3){t9 in e3?n.f(e3,t9,o(0,r3)):e3[t9]=r3}},800:(e2,t8,r2)=>{var n=r2(2016);e2.exports=function(e3,t9,r3){if(n(e3),t9===void 0)return e3;switch(r3){case 1:return function(r4){return e3.call(t9,r4)};case 2:return function(r4,n2){return e3.call(t9,r4,n2)};case 3:return function(r4,n2,o){return e3.call(t9,r4,n2,o)}}return function(){return e3.apply(t9,arguments)}}},24:e2=>{e2.exports=function(e3){if(e3==null)throw TypeError("Can't call method on "+e3);return e3}},1668:(e2,t8,r2)=>{e2.exports=!r2(9316)(function(){return Object.defineProperty({},"a",{get:function(){return 7}}).a!=7})},1300:(e2,t8,r2)=>{var n=r2(3888),o=r2(2804).document,i=n(o)&&n(o.createElement);e2.exports=function(e3){return i?o.createElement(e3):{}}},444:e2=>{e2.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},7076:(e2,t8,r2)=>{var n=r2(2804),o=r2(8432),i=r2(2336),s=r2(8868),a=r2(800),c="prototype",u=function(e3,t9,r3){var l,f,p,h,d=e3&u.F,m=e3&u.G,g=e3&u.S,v=e3&u.P,y=e3&u.B,b=m?n:g?n[t9]||(n[t9]={}):(n[t9]||{})[c],w=m?o:o[t9]||(o[t9]={}),x=w[c]||(w[c]={});for(l in m&&(r3=t9),r3)p=((f=!d&&b&&b[l]!==void 0)?b:r3)[l],h=y&&f?a(p,n):v&&typeof p=="function"?a(Function.call,p):p,b&&s(b,l,p,e3&u.U),w[l]!=p&&i(w,l,h),v&&x[l]!=p&&(x[l]=p)};n.core=o,u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,e2.exports=u},9316:e2=>{e2.exports=function(e3){try{return!!e3()}catch{return!0}}},4448:(e2,t8,r2)=>{"use strict";var n=r2(2336),o=r2(8868),i=r2(9316),s=r2(24),a=r2(7096);e2.exports=function(e3,t9,r3){var c=a(e3),u=r3(s,c,""[e3]),l=u[0],f=u[1];i(function(){var t10={};return t10[c]=function(){return 7},""[e3](t10)!=7})&&(o(String.prototype,e3,l),n(RegExp.prototype,c,t9==2?function(e4,t10){return f.call(e4,this,t10)}:function(e4){return f.call(e4,this)}))}},8068:(e2,t8,r2)=>{"use strict";var n=r2(3504);e2.exports=function(){var e3=n(this),t9="";return e3.global&&(t9+="g"),e3.ignoreCase&&(t9+="i"),e3.multiline&&(t9+="m"),e3.unicode&&(t9+="u"),e3.sticky&&(t9+="y"),t9}},7228:(e2,t8,r2)=>{var n=r2(800),o=r2(2372),i=r2(3164),s=r2(3504),a=r2(3528),c=r2(2800),u={},l={},f=e2.exports=function(e3,t9,r3,f2,p){var h,d,m,g,v=p?function(){return e3}:c(e3),y=n(r3,f2,t9?2:1),b=0;if(typeof v!="function")throw TypeError(e3+" is not iterable!");if(i(v)){for(h=a(e3.length);h>b;b++)if((g=t9?y(s(d=e3[b])[0],d[1]):y(e3[b]))===u||g===l)return g}else for(m=v.call(e3);!(d=m.next()).done;)if((g=o(m,y,d.value,t9))===u||g===l)return g};f.BREAK=u,f.RETURN=l},2804:e2=>{var t8=e2.exports=typeof window<"u"&&window.Math==Math?window:typeof self<"u"&&self.Math==Math?self:Function("return this")();typeof __g=="number"&&(__g=t8)},9080:e2=>{var t8={}.hasOwnProperty;e2.exports=function(e3,r2){return t8.call(e3,r2)}},2336:(e2,t8,r2)=>{var n=r2(8520),o=r2(8164);e2.exports=r2(1668)?function(e3,t9,r3){return n.f(e3,t9,o(1,r3))}:function(e3,t9,r3){return e3[t9]=r3,e3}},4016:(e2,t8,r2)=>{var n=r2(2804).document;e2.exports=n&&n.documentElement},5516:(e2,t8,r2)=>{e2.exports=!r2(1668)&&!r2(9316)(function(){return Object.defineProperty(r2(1300)("div"),"a",{get:function(){return 7}}).a!=7})},2672:(e2,t8,r2)=>{var n=r2(3888),o=r2(5076).set;e2.exports=function(e3,t9,r3){var i,s=t9.constructor;return s!==r3&&typeof s=="function"&&(i=s.prototype)!==r3.prototype&&n(i)&&o&&o(e3,i),e3}},5628:e2=>{e2.exports=function(e3,t8,r2){var n=r2===void 0;switch(t8.length){case 0:return n?e3():e3.call(r2);case 1:return n?e3(t8[0]):e3.call(r2,t8[0]);case 2:return n?e3(t8[0],t8[1]):e3.call(r2,t8[0],t8[1]);case 3:return n?e3(t8[0],t8[1],t8[2]):e3.call(r2,t8[0],t8[1],t8[2]);case 4:return n?e3(t8[0],t8[1],t8[2],t8[3]):e3.call(r2,t8[0],t8[1],t8[2],t8[3])}return e3.apply(r2,t8)}},2936:(e2,t8,r2)=>{var n=r2(6924);e2.exports=Object("z").propertyIsEnumerable(0)?Object:function(e3){return n(e3)=="String"?e3.split(""):Object(e3)}},3164:(e2,t8,r2)=>{var n=r2(2488),o=r2(7096)("iterator"),i=Array.prototype;e2.exports=function(e3){return e3!==void 0&&(n.Array===e3||i[o]===e3)}},3888:e2=>{e2.exports=function(e3){return typeof e3=="object"?e3!==null:typeof e3=="function"}},7760:(e2,t8,r2)=>{var n=r2(3888),o=r2(6924),i=r2(7096)("match");e2.exports=function(e3){var t9;return n(e3)&&((t9=e3[i])!==void 0?!!t9:o(e3)=="RegExp")}},2372:(e2,t8,r2)=>{var n=r2(3504);e2.exports=function(e3,t9,r3,o){try{return o?t9(n(r3)[0],r3[1]):t9(r3)}catch(t10){var i=e3.return;throw i!==void 0&&n(i.call(e3)),t10}}},128:(e2,t8,r2)=>{"use strict";var n=r2(3472),o=r2(8164),i=r2(6256),s={};r2(2336)(s,r2(7096)("iterator"),function(){return this}),e2.exports=function(e3,t9,r3){e3.prototype=n(s,{next:o(1,r3)}),i(e3,t9+" Iterator")}},6952:(e2,t8,r2)=>{"use strict";var n=r2(4440),o=r2(7076),i=r2(8868),s=r2(2336),a=r2(2488),c=r2(128),u=r2(6256),l=r2(9556),f=r2(7096)("iterator"),p=!([].keys&&"next"in[].keys()),h="keys",d="values",m=function(){return this};e2.exports=function(e3,t9,r3,g,v,y,b){c(r3,t9,g);var w,x,S,P=function(e4){if(!p&&e4 in j)return j[e4];switch(e4){case h:case d:return function(){return new r3(this,e4)}}return function(){return new r3(this,e4)}},O=t9+" Iterator",I=v==d,E=!1,j=e3.prototype,_=j[f]||j["@@iterator"]||v&&j[v],A=_||P(v),k=v?I?P("entries"):A:void 0,N=t9=="Array"&&j.entries||_;if(N&&(S=l(N.call(new e3)))!==Object.prototype&&S.next&&(u(S,O,!0),n||typeof S[f]=="function"||s(S,f,m)),I&&_&&_.name!==d&&(E=!0,A=function(){return _.call(this)}),n&&!b||!p&&!E&&j[f]||s(j,f,A),a[t9]=A,a[O]=m,v)if(w={values:I?A:P(d),keys:y?A:P(h),entries:k},b)for(x in w)x in j||i(j,x,w[x]);else o(o.P+o.F*(p||E),t9,w);return w}},8380:(e2,t8,r2)=>{var n=r2(7096)("iterator"),o=!1;try{var i=[7][n]();i.return=function(){o=!0},Array.from(i,function(){throw 2})}catch{}e2.exports=function(e3,t9){if(!t9&&!o)return!1;var r3=!1;try{var i2=[7],s=i2[n]();s.next=function(){return{done:r3=!0}},i2[n]=function(){return s},e3(i2)}catch{}return r3}},172:e2=>{e2.exports=function(e3,t8){return{value:t8,done:!!e3}}},2488:e2=>{e2.exports={}},4440:e2=>{e2.exports=!1},2020:(e2,t8,r2)=>{var n=r2(9664)("meta"),o=r2(3888),i=r2(9080),s=r2(8520).f,a=0,c=Object.isExtensible||function(){return!0},u=!r2(9316)(function(){return c(Object.preventExtensions({}))}),l=function(e3){s(e3,n,{value:{i:"O"+ ++a,w:{}}})},f=e2.exports={KEY:n,NEED:!1,fastKey:function(e3,t9){if(!o(e3))return typeof e3=="symbol"?e3:(typeof e3=="string"?"S":"P")+e3;if(!i(e3,n)){if(!c(e3))return"F";if(!t9)return"E";l(e3)}return e3[n].i},getWeak:function(e3,t9){if(!i(e3,n)){if(!c(e3))return!0;if(!t9)return!1;l(e3)}return e3[n].w},onFreeze:function(e3){return u&&f.NEED&&c(e3)&&!i(e3,n)&&l(e3),e3}}},448:(e2,t8,r2)=>{var n=r2(2804),o=r2(2280).set,i=n.MutationObserver||n.WebKitMutationObserver,s=n.process,a=n.Promise,c=r2(6924)(s)=="process";e2.exports=function(){var e3,t9,r3,u=function(){var n2,o2;for(c&&(n2=s.domain)&&n2.exit();e3;){o2=e3.fn,e3=e3.next;try{o2()}catch(n3){throw e3?r3():t9=void 0,n3}}t9=void 0,n2&&n2.enter()};if(c)r3=function(){s.nextTick(u)};else if(!i||n.navigator&&n.navigator.standalone)if(a&&a.resolve){var l=a.resolve(void 0);r3=function(){l.then(u)}}else r3=function(){o.call(n,u)};else{var f=!0,p=document.createTextNode("");new i(u).observe(p,{characterData:!0}),r3=function(){p.data=f=!f}}return function(n2){var o2={fn:n2,next:void 0};t9&&(t9.next=o2),e3||(e3=o2,r3()),t9=o2}}},8024:(e2,t8,r2)=>{"use strict";var n=r2(2016);function o(e3){var t9,r3;this.promise=new e3(function(e4,n2){if(t9!==void 0||r3!==void 0)throw TypeError("Bad Promise constructor");t9=e4,r3=n2}),this.resolve=n(t9),this.reject=n(r3)}e2.exports.f=function(e3){return new o(e3)}},6472:(e2,t8,r2)=>{"use strict";var n=r2(5444),o=r2(5364),i=r2(3875),s=r2(1164),a=r2(2936),c=Object.assign;e2.exports=!c||r2(9316)(function(){var e3={},t9={},r3=Symbol(),n2="abcdefghijklmnopqrst";return e3[r3]=7,n2.split("").forEach(function(e4){t9[e4]=e4}),c({},e3)[r3]!=7||Object.keys(c({},t9)).join("")!=n2})?function(e3,t9){for(var r3=s(e3),c2=arguments.length,u=1,l=o.f,f=i.f;c2>u;)for(var p,h=a(arguments[u++]),d=l?n(h).concat(l(h)):n(h),m=d.length,g=0;m>g;)f.call(h,p=d[g++])&&(r3[p]=h[p]);return r3}:c},3472:(e2,t8,r2)=>{var n=r2(3504),o=r2(1176),i=r2(444),s=r2(4588)("IE_PROTO"),a=function(){},c="prototype",u=function(){var e3,t9=r2(1300)("iframe"),n2=i.length;for(t9.style.display="none",r2(4016).appendChild(t9),t9.src="javascript:",(e3=t9.contentWindow.document).open(),e3.write("<script>document.F=Object</script>"),e3.close(),u=e3.F;n2--;)delete u[c][i[n2]];return u()};e2.exports=Object.create||function(e3,t9){var r3;return e3!==null?(a[c]=n(e3),r3=new a,a[c]=null,r3[s]=e3):r3=u(),t9===void 0?r3:o(r3,t9)}},8520:(e2,t8,r2)=>{var n=r2(3504),o=r2(5516),i=r2(1896),s=Object.defineProperty;t8.f=r2(1668)?Object.defineProperty:function(e3,t9,r3){if(n(e3),t9=i(t9,!0),n(r3),o)try{return s(e3,t9,r3)}catch{}if("get"in r3||"set"in r3)throw TypeError("Accessors not supported!");return"value"in r3&&(e3[t9]=r3.value),e3}},1176:(e2,t8,r2)=>{var n=r2(8520),o=r2(3504),i=r2(5444);e2.exports=r2(1668)?Object.defineProperties:function(e3,t9){o(e3);for(var r3,s=i(t9),a=s.length,c=0;a>c;)n.f(e3,r3=s[c++],t9[r3]);return e3}},6524:(e2,t8,r2)=>{var n=r2(3875),o=r2(8164),i=r2(2780),s=r2(1896),a=r2(9080),c=r2(5516),u=Object.getOwnPropertyDescriptor;t8.f=r2(1668)?u:function(e3,t9){if(e3=i(e3),t9=s(t9,!0),c)try{return u(e3,t9)}catch{}if(a(e3,t9))return o(!n.f.call(e3,t9),e3[t9])}},5364:(e2,t8)=>{t8.f=Object.getOwnPropertySymbols},9556:(e2,t8,r2)=>{var n=r2(9080),o=r2(1164),i=r2(4588)("IE_PROTO"),s=Object.prototype;e2.exports=Object.getPrototypeOf||function(e3){return e3=o(e3),n(e3,i)?e3[i]:typeof e3.constructor=="function"&&e3 instanceof e3.constructor?e3.constructor.prototype:e3 instanceof Object?s:null}},3816:(e2,t8,r2)=>{var n=r2(9080),o=r2(2780),i=r2(7504)(!1),s=r2(4588)("IE_PROTO");e2.exports=function(e3,t9){var r3,a=o(e3),c=0,u=[];for(r3 in a)r3!=s&&n(a,r3)&&u.push(r3);for(;t9.length>c;)n(a,r3=t9[c++])&&(~i(u,r3)||u.push(r3));return u}},5444:(e2,t8,r2)=>{var n=r2(3816),o=r2(444);e2.exports=Object.keys||function(e3){return n(e3,o)}},3875:(e2,t8)=>{t8.f={}.propertyIsEnumerable},2504:(e2,t8,r2)=>{var n=r2(5444),o=r2(2780),i=r2(3875).f;e2.exports=function(e3){return function(t9){for(var r3,s=o(t9),a=n(s),c=a.length,u=0,l=[];c>u;)i.call(s,r3=a[u++])&&l.push(e3?[r3,s[r3]]:s[r3]);return l}}},7904:e2=>{e2.exports=function(e3){try{return{e:!1,v:e3()}}catch(e4){return{e:!0,v:e4}}}},0:(e2,t8,r2)=>{var n=r2(3504),o=r2(3888),i=r2(8024);e2.exports=function(e3,t9){if(n(e3),o(t9)&&t9.constructor===e3)return t9;var r3=i.f(e3);return(0,r3.resolve)(t9),r3.promise}},8164:e2=>{e2.exports=function(e3,t8){return{enumerable:!(1&e3),configurable:!(2&e3),writable:!(4&e3),value:t8}}},7704:(e2,t8,r2)=>{var n=r2(8868);e2.exports=function(e3,t9,r3){for(var o in t9)n(e3,o,t9[o],r3);return e3}},8868:(e2,t8,r2)=>{var n=r2(2804),o=r2(2336),i=r2(9080),s=r2(9664)("src"),a="toString",c=Function[a],u=(""+c).split(a);r2(8432).inspectSource=function(e3){return c.call(e3)},(e2.exports=function(e3,t9,r3,a2){var c2=typeof r3=="function";c2&&(i(r3,"name")||o(r3,"name",t9)),e3[t9]!==r3&&(c2&&(i(r3,s)||o(r3,s,e3[t9]?""+e3[t9]:u.join(String(t9)))),e3===n?e3[t9]=r3:a2?e3[t9]?e3[t9]=r3:o(e3,t9,r3):(delete e3[t9],o(e3,t9,r3)))})(Function.prototype,a,function(){return typeof this=="function"&&this[s]||c.call(this)})},5076:(e2,t8,r2)=>{var n=r2(3888),o=r2(3504),i=function(e3,t9){if(o(e3),!n(t9)&&t9!==null)throw TypeError(t9+": can't set as prototype!")};e2.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(e3,t9,n2){try{(n2=r2(800)(Function.call,r2(6524).f(Object.prototype,"__proto__").set,2))(e3,[]),t9=!(e3 instanceof Array)}catch{t9=!0}return function(e4,r3){return i(e4,r3),t9?e4.__proto__=r3:n2(e4,r3),e4}}({},!1):void 0),check:i}},3384:(e2,t8,r2)=>{"use strict";var n=r2(2804),o=r2(8520),i=r2(1668),s=r2(7096)("species");e2.exports=function(e3){var t9=n[e3];i&&t9&&!t9[s]&&o.f(t9,s,{configurable:!0,get:function(){return this}})}},6256:(e2,t8,r2)=>{var n=r2(8520).f,o=r2(9080),i=r2(7096)("toStringTag");e2.exports=function(e3,t9,r3){e3&&!o(e3=r3?e3:e3.prototype,i)&&n(e3,i,{configurable:!0,value:t9})}},4588:(e2,t8,r2)=>{var n=r2(5432)("keys"),o=r2(9664);e2.exports=function(e3){return n[e3]||(n[e3]=o(e3))}},5432:(e2,t8,r2)=>{var n=r2(8432),o=r2(2804),i="__core-js_shared__",s=o[i]||(o[i]={});(e2.exports=function(e3,t9){return s[e3]||(s[e3]=t9!==void 0?t9:{})})("versions",[]).push({version:n.version,mode:r2(4440)?"pure":"global",copyright:"\xA9 2018 Denis Pushkarev (zloirock.ru)"})},6776:(e2,t8,r2)=>{var n=r2(3504),o=r2(2016),i=r2(7096)("species");e2.exports=function(e3,t9){var r3,s=n(e3).constructor;return s===void 0||(r3=n(s)[i])==null?t9:o(r3)}},6712:(e2,t8,r2)=>{"use strict";var n=r2(9316);e2.exports=function(e3,t9){return!!e3&&n(function(){t9?e3.call(null,function(){},1):e3.call(null)})}},2280:(e2,t8,r2)=>{var n,o,i,s=r2(800),a=r2(5628),c=r2(4016),u=r2(1300),l=r2(2804),f=l.process,p=l.setImmediate,h=l.clearImmediate,d=l.MessageChannel,m=l.Dispatch,g=0,v={},y="onreadystatechange",b=function(){var e3=+this;if(v.hasOwnProperty(e3)){var t9=v[e3];delete v[e3],t9()}},w=function(e3){b.call(e3.data)};p&&h||(p=function(e3){for(var t9=[],r3=1;arguments.length>r3;)t9.push(arguments[r3++]);return v[++g]=function(){a(typeof e3=="function"?e3:Function(e3),t9)},n(g),g},h=function(e3){delete v[e3]},r2(6924)(f)=="process"?n=function(e3){f.nextTick(s(b,e3,1))}:m&&m.now?n=function(e3){m.now(s(b,e3,1))}:d?(i=(o=new d).port2,o.port1.onmessage=w,n=s(i.postMessage,i,1)):l.addEventListener&&typeof postMessage=="function"&&!l.importScripts?(n=function(e3){l.postMessage(e3+"","*")},l.addEventListener("message",w,!1)):n=y in u("script")?function(e3){c.appendChild(u("script"))[y]=function(){c.removeChild(this),b.call(e3)}}:function(e3){setTimeout(s(b,e3,1),0)}),e2.exports={set:p,clear:h}},8508:(e2,t8,r2)=>{var n=r2(8236),o=Math.max,i=Math.min;e2.exports=function(e3,t9){return(e3=n(e3))<0?o(e3+t9,0):i(e3,t9)}},8236:e2=>{var t8=Math.ceil,r2=Math.floor;e2.exports=function(e3){return isNaN(e3=+e3)?0:(e3>0?r2:t8)(e3)}},2780:(e2,t8,r2)=>{var n=r2(2936),o=r2(24);e2.exports=function(e3){return n(o(e3))}},3528:(e2,t8,r2)=>{var n=r2(8236),o=Math.min;e2.exports=function(e3){return e3>0?o(n(e3),9007199254740991):0}},1164:(e2,t8,r2)=>{var n=r2(24);e2.exports=function(e3){return Object(n(e3))}},1896:(e2,t8,r2)=>{var n=r2(3888);e2.exports=function(e3,t9){if(!n(e3))return e3;var r3,o;if(t9&&typeof(r3=e3.toString)=="function"&&!n(o=r3.call(e3))||typeof(r3=e3.valueOf)=="function"&&!n(o=r3.call(e3))||!t9&&typeof(r3=e3.toString)=="function"&&!n(o=r3.call(e3)))return o;throw TypeError("Can't convert object to primitive value")}},9664:e2=>{var t8=0,r2=Math.random();e2.exports=function(e3){return"Symbol(".concat(e3===void 0?"":e3,")_",(++t8+r2).toString(36))}},1168:(e2,t8,r2)=>{var n=r2(2804).navigator;e2.exports=n&&n.userAgent||""},2772:(e2,t8,r2)=>{var n=r2(3888);e2.exports=function(e3,t9){if(!n(e3)||e3._t!==t9)throw TypeError("Incompatible receiver, "+t9+" required!");return e3}},7096:(e2,t8,r2)=>{var n=r2(5432)("wks"),o=r2(9664),i=r2(2804).Symbol,s=typeof i=="function";(e2.exports=function(e3){return n[e3]||(n[e3]=s&&i[e3]||(s?i:o)("Symbol."+e3))}).store=n},2800:(e2,t8,r2)=>{var n=r2(5848),o=r2(7096)("iterator"),i=r2(2488);e2.exports=r2(8432).getIteratorMethod=function(e3){if(e3!=null)return e3[o]||e3["@@iterator"]||i[n(e3)]}},4228:(e2,t8,r2)=>{"use strict";var n=r2(800),o=r2(7076),i=r2(1164),s=r2(2372),a=r2(3164),c=r2(3528),u=r2(2340),l=r2(2800);o(o.S+o.F*!r2(8380)(function(e3){Array.from(e3)}),"Array",{from:function(e3){var t9,r3,o2,f,p=i(e3),h=typeof this=="function"?this:Array,d=arguments.length,m=d>1?arguments[1]:void 0,g=m!==void 0,v=0,y=l(p);if(g&&(m=n(m,d>2?arguments[2]:void 0,2)),y==null||h==Array&&a(y))for(r3=new h(t9=c(p.length));t9>v;v++)u(r3,v,g?m(p[v],v):p[v]);else for(f=y.call(p),r3=new h;!(o2=f.next()).done;v++)u(r3,v,g?s(f,m,[o2.value,v],!0):o2.value);return r3.length=v,r3}})},4260:(e2,t8,r2)=>{"use strict";var n=r2(7076),o=r2(2016),i=r2(1164),s=r2(9316),a=[].sort,c=[1,2,3];n(n.P+n.F*(s(function(){c.sort(void 0)})||!s(function(){c.sort(null)})||!r2(6712)(a)),"Array",{sort:function(e3){return e3===void 0?a.call(i(this)):a.call(i(this),o(e3))}})},5584:(e2,t8,r2)=>{var n=r2(7076);n(n.S+n.F,"Object",{assign:r2(6472)})},5888:(e2,t8,r2)=>{"use strict";var n,o,i,s,a=r2(4440),c=r2(2804),u=r2(800),l=r2(5848),f=r2(7076),p=r2(3888),h=r2(2016),d=r2(2388),m=r2(7228),g=r2(6776),v=r2(2280).set,y=r2(448)(),b=r2(8024),w=r2(7904),x=r2(1168),S=r2(0),P="Promise",O=c.TypeError,I=c.process,E=I&&I.versions,j=E&&E.v8||"",_=c[P],A=l(I)=="process",k=function(){},N=o=b.f,F=!!function(){try{var e3=_.resolve(1),t9=(e3.constructor={})[r2(7096)("species")]=function(e4){e4(k,k)};return(A||typeof PromiseRejectionEvent=="function")&&e3.then(k)instanceof t9&&j.indexOf("6.6")!==0&&x.indexOf("Chrome/66")===-1}catch{}}(),C=function(e3){var t9;return!(!p(e3)||typeof(t9=e3.then)!="function")&&t9},M=function(e3,t9){if(!e3._n){e3._n=!0;var r3=e3._c;y(function(){for(var n2=e3._v,o2=e3._s==1,i2=0,s2=function(t10){var r4,i3,s3,a2=o2?t10.ok:t10.fail,c2=t10.resolve,u2=t10.reject,l2=t10.domain;try{a2?(o2||(e3._h==2&&D(e3),e3._h=1),a2===!0?r4=n2:(l2&&l2.enter(),r4=a2(n2),l2&&(l2.exit(),s3=!0)),r4===t10.promise?u2(O("Promise-chain cycle")):(i3=C(r4))?i3.call(r4,c2,u2):c2(r4)):u2(n2)}catch(e4){l2&&!s3&&l2.exit(),u2(e4)}};r3.length>i2;)s2(r3[i2++]);e3._c=[],e3._n=!1,t9&&!e3._h&&V(e3)})}},V=function(e3){v.call(c,function(){var t9,r3,n2,o2=e3._v,i2=T(e3);if(i2&&(t9=w(function(){A?I.emit("unhandledRejection",o2,e3):(r3=c.onunhandledrejection)?r3({promise:e3,reason:o2}):(n2=c.console)&&n2.error&&n2.error("Unhandled promise rejection",o2)}),e3._h=A||T(e3)?2:1),e3._a=void 0,i2&&t9.e)throw t9.v})},T=function(e3){return e3._h!==1&&(e3._a||e3._c).length===0},D=function(e3){v.call(c,function(){var t9;A?I.emit("rejectionHandled",e3):(t9=c.onrejectionhandled)&&t9({promise:e3,reason:e3._v})})},L=function(e3){var t9=this;t9._d||(t9._d=!0,(t9=t9._w||t9)._v=e3,t9._s=2,t9._a||(t9._a=t9._c.slice()),M(t9,!0))},$=function(e3){var t9,r3=this;if(!r3._d){r3._d=!0,r3=r3._w||r3;try{if(r3===e3)throw O("Promise can't be resolved itself");(t9=C(e3))?y(function(){var n2={_w:r3,_d:!1};try{t9.call(e3,u($,n2,1),u(L,n2,1))}catch(e4){L.call(n2,e4)}}):(r3._v=e3,r3._s=1,M(r3,!1))}catch(e4){L.call({_w:r3,_d:!1},e4)}}};F||(_=function(e3){d(this,_,P,"_h"),h(e3),n.call(this);try{e3(u($,this,1),u(L,this,1))}catch(e4){L.call(this,e4)}},(n=function(e3){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=r2(7704)(_.prototype,{then:function(e3,t9){var r3=N(g(this,_));return r3.ok=typeof e3!="function"||e3,r3.fail=typeof t9=="function"&&t9,r3.domain=A?I.domain:void 0,this._c.push(r3),this._a&&this._a.push(r3),this._s&&M(this,!1),r3.promise},catch:function(e3){return this.then(void 0,e3)}}),i=function(){var e3=new n;this.promise=e3,this.resolve=u($,e3,1),this.reject=u(L,e3,1)},b.f=N=function(e3){return e3===_||e3===s?new i(e3):o(e3)}),f(f.G+f.W+f.F*!F,{Promise:_}),r2(6256)(_,P),r2(3384)(P),s=r2(8432)[P],f(f.S+f.F*!F,P,{reject:function(e3){var t9=N(this);return(0,t9.reject)(e3),t9.promise}}),f(f.S+f.F*(a||!F),P,{resolve:function(e3){return S(a&&this===s?_:this,e3)}}),f(f.S+f.F*!(F&&r2(8380)(function(e3){_.all(e3).catch(k)})),P,{all:function(e3){var t9=this,r3=N(t9),n2=r3.resolve,o2=r3.reject,i2=w(function(){var r4=[],i3=0,s2=1;m(e3,!1,function(e4){var a2=i3++,c2=!1;r4.push(void 0),s2++,t9.resolve(e4).then(function(e5){c2||(c2=!0,r4[a2]=e5,--s2||n2(r4))},o2)}),--s2||n2(r4)});return i2.e&&o2(i2.v),r3.promise},race:function(e3){var t9=this,r3=N(t9),n2=r3.reject,o2=w(function(){m(e3,!1,function(e4){t9.resolve(e4).then(r3.resolve,n2)})});return o2.e&&n2(o2.v),r3.promise}})},7320:(e2,t8,r2)=>{r2(1668)&&/./g.flags!="g"&&r2(8520).f(RegExp.prototype,"flags",{configurable:!0,get:r2(8068)})},4880:(e2,t8,r2)=>{r2(4448)("match",1,function(e3,t9,r3){return[function(r4){"use strict";var n=e3(this),o=r4?.[t9];return o!==void 0?o.call(r4,n):new RegExp(r4)[t9](String(n))},r3]})},8412:(e2,t8,r2)=>{r2(4448)("replace",2,function(e3,t9,r3){return[function(n,o){"use strict";var i=e3(this),s=n?.[t9];return s!==void 0?s.call(n,i,o):r3.call(String(i),n,o)},r3]})},223:(e2,t8,r2)=>{r2(4448)("search",1,function(e3,t9,r3){return[function(r4){"use strict";var n=e3(this),o=r4?.[t9];return o!==void 0?o.call(r4,n):new RegExp(r4)[t9](String(n))},r3]})},3708:(e2,t8,r2)=>{r2(4448)("split",2,function(e3,t9,n){"use strict";var o=r2(7760),i=n,s=[].push,a="split",c="length",u="lastIndex";if("abbc"[a](/(b)*/)[1]=="c"||"test"[a](/(?:)/,-1)[c]!=4||"ab"[a](/(?:ab)*/)[c]!=2||"."[a](/(.?)(.?)/)[c]!=4||"."[a](/()()/)[c]>1||""[a](/.?/)[c]){var l=/()??/.exec("")[1]===void 0;n=function(e4,t10){var r3=String(this);if(e4===void 0&&t10===0)return[];if(!o(e4))return i.call(r3,e4,t10);var n2,a2,f,p,h,d=[],m=(e4.ignoreCase?"i":"")+(e4.multiline?"m":"")+(e4.unicode?"u":"")+(e4.sticky?"y":""),g=0,v=t10===void 0?4294967295:t10>>>0,y=new RegExp(e4.source,m+"g");for(l||(n2=new RegExp("^"+y.source+"$(?!\\s)",m));(a2=y.exec(r3))&&!((f=a2.index+a2[0][c])>g&&(d.push(r3.slice(g,a2.index)),!l&&a2[c]>1&&a2[0].replace(n2,function(){for(h=1;h<arguments[c]-2;h++)arguments[h]===void 0&&(a2[h]=void 0)}),a2[c]>1&&a2.index<r3[c]&&s.apply(d,a2.slice(1)),p=a2[0][c],g=f,d[c]>=v));)y[u]===a2.index&&y[u]++;return g===r3[c]?!p&&y.test("")||d.push(""):d.push(r3.slice(g)),d[c]>v?d.slice(0,v):d}}else"0"[a](void 0,0)[c]&&(n=function(e4,t10){return e4===void 0&&t10===0?[]:i.call(this,e4,t10)});return[function(r3,o2){var i2=e3(this),s2=r3?.[t9];return s2!==void 0?s2.call(r3,i2,o2):n.call(String(i2),r3,o2)},n]})},6568:(e2,t8,r2)=>{"use strict";r2(7320);var n=r2(3504),o=r2(8068),i=r2(1668),s="toString",a=/./[s],c=function(e3){r2(8868)(RegExp.prototype,s,e3,!0)};r2(9316)(function(){return a.call({source:"a",flags:"b"})!="/a/b"})?c(function(){var e3=n(this);return"/".concat(e3.source,"/","flags"in e3?e3.flags:!i&&e3 instanceof RegExp?o.call(e3):void 0)}):a.name!=s&&c(function(){return a.call(this)})},7276:(e2,t8,r2)=>{"use strict";var n=r2(148),o=r2(2772);e2.exports=r2(9412)("Set",function(e3){return function(){return e3(this,arguments.length>0?arguments[0]:void 0)}},{add:function(e3){return n.def(o(this,"Set"),e3=e3===0?0:e3,e3)}},n)},7360:(e2,t8,r2)=>{"use strict";var n=r2(7076),o=r2(7504)(!0);n(n.P,"Array",{includes:function(e3){return o(this,e3,arguments.length>1?arguments[1]:void 0)}}),r2(7384)("includes")},3852:(e2,t8,r2)=>{var n=r2(7076),o=r2(2504)(!0);n(n.S,"Object",{entries:function(e3){return o(e3)}})},5308:(e2,t8,r2)=>{var n=r2(7076),o=r2(2504)(!1);n(n.S,"Object",{values:function(e3){return o(e3)}})},7468:(e2,t8,r2)=>{"use strict";let n=r2(4368),o=r2(9624),i=r2(1846);function s(e3,t9,r3){let s2=o(e3,t9,r3),a=n.spawn(s2.command,s2.args,s2.options);return i.hookChildProcess(a,s2),a}e2.exports=s,e2.exports.spawn=s,e2.exports.sync=function(e3,t9,r3){let s2=o(e3,t9,r3),a=n.spawnSync(s2.command,s2.args,s2.options);return a.error=a.error||i.verifyENOENTSync(a.status,s2),a},e2.exports._parse=o,e2.exports._enoent=i},1846:e2=>{"use strict";let t8=process.platform==="win32";function r2(e3,t9){return Object.assign(new Error(`${t9} ${e3.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t9} ${e3.command}`,path:e3.command,spawnargs:e3.args})}function n(e3,n2){return t8&&e3===1&&!n2.file?r2(n2.original,"spawn"):null}e2.exports={hookChildProcess:function(e3,r3){if(!t8)return;let o=e3.emit;e3.emit=function(t9,i){if(t9==="exit"){let t10=n(i,r3);if(t10)return o.call(e3,"error",t10)}return o.apply(e3,arguments)}},verifyENOENT:n,verifyENOENTSync:function(e3,n2){return t8&&e3===1&&!n2.file?r2(n2.original,"spawnSync"):null},notFoundError:r2}},9624:(e2,t8,r2)=>{"use strict";let n=r2(7072),o=r2(9480),i=r2(8372),s=r2(824),a=r2(7780),c=r2(1716),u=process.platform==="win32",l=/\.(?:com|exe)$/i,f=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i,p=o(()=>c.satisfies(process.version,"^4.8.0 || ^5.7.0 || >= 6.0.0",!0))||!1;e2.exports=function(e3,t9,r3){t9&&!Array.isArray(t9)&&(r3=t9,t9=null);let o2={command:e3,args:t9=t9?t9.slice(0):[],options:r3=Object.assign({},r3),file:void 0,original:{command:e3,args:t9}};return r3.shell?function(e4){if(p)return e4;let t10=[e4.command].concat(e4.args).join(" ");return u?(e4.command=typeof e4.options.shell=="string"?e4.options.shell:process.env.comspec||"cmd.exe",e4.args=["/d","/s","/c",`"${t10}"`],e4.options.windowsVerbatimArguments=!0):(typeof e4.options.shell=="string"?e4.command=e4.options.shell:process.platform==="android"?e4.command="/system/bin/sh":e4.command="/bin/sh",e4.args=["-c",t10]),e4}(o2):function(e4){if(!u)return e4;let t10=function(e5){e5.file=i(e5);let t11=e5.file&&a(e5.file);return t11?(e5.args.unshift(e5.file),e5.command=t11,i(e5)):e5.file}(e4),r4=!l.test(t10);if(e4.options.forceShell||r4){let r5=f.test(t10);e4.command=n.normalize(e4.command),e4.command=s.command(e4.command),e4.args=e4.args.map(e5=>s.argument(e5,r5));let o3=[e4.command].concat(e4.args).join(" ");e4.args=["/d","/s","/c",`"${o3}"`],e4.command=process.env.comspec||"cmd.exe",e4.options.windowsVerbatimArguments=!0}return e4}(o2)}},824:e2=>{"use strict";let t8=/([()\][%!^"`<>&|;, *?])/g;e2.exports.command=function(e3){return e3.replace(t8,"^$1")},e2.exports.argument=function(e3,r2){return e3=(e3=`"${e3=(e3=(e3=`${e3}`).replace(/(\\*)"/g,'$1$1\\"')).replace(/(\\*)$/,"$1$1")}"`).replace(t8,"^$1"),r2&&(e3=e3.replace(t8,"^$1")),e3}},7780:(e2,t8,r2)=>{"use strict";let n=r2(2058),o=r2(6176);e2.exports=function(e3){let t9,r3;Buffer.alloc?t9=Buffer.alloc(150):(t9=new Buffer(150),t9.fill(0));try{r3=n.openSync(e3,"r"),n.readSync(r3,t9,0,150,0),n.closeSync(r3)}catch{}return o(t9.toString())}},8372:(e2,t8,r2)=>{"use strict";let n=r2(7072),o=r2(8460),i=r2(3032)();function s(e3,t9){let r3=process.cwd(),s2=e3.options.cwd!=null;if(s2)try{process.chdir(e3.options.cwd)}catch{}let a;try{a=o.sync(e3.command,{path:(e3.options.env||process.env)[i],pathExt:t9?n.delimiter:void 0})}catch{}finally{process.chdir(r3)}return a&&(a=n.resolve(s2?e3.options.cwd:"",a)),a}e2.exports=function(e3){return s(e3)||s(e3,!0)}},9988:(e2,t8,r2)=>{var n=r2(4640),o=function(){},i=function(e3,t9,r3){if(typeof t9=="function")return i(e3,null,t9);t9||(t9={}),r3=n(r3||o);var s=e3._writableState,a=e3._readableState,c=t9.readable||t9.readable!==!1&&e3.readable,u=t9.writable||t9.writable!==!1&&e3.writable,l=function(){e3.writable||f()},f=function(){u=!1,c||r3.call(e3)},p=function(){c=!1,u||r3.call(e3)},h=function(t10){r3.call(e3,t10?new Error("exited with error code: "+t10):null)},d=function(t10){r3.call(e3,t10)},m=function(){return(!c||a&&a.ended)&&(!u||s&&s.ended)?void 0:r3.call(e3,new Error("premature close"))},g=function(){e3.req.on("finish",f)};return function(e4){return e4.setHeader&&typeof e4.abort=="function"}(e3)?(e3.on("complete",f),e3.on("abort",m),e3.req?g():e3.on("request",g)):u&&!s&&(e3.on("end",l),e3.on("close",l)),function(e4){return e4.stdio&&Array.isArray(e4.stdio)&&e4.stdio.length===3}(e3)&&e3.on("exit",h),e3.on("end",p),e3.on("finish",f),t9.error!==!1&&e3.on("error",d),e3.on("close",m),function(){e3.removeListener("complete",f),e3.removeListener("abort",m),e3.removeListener("request",g),e3.req&&e3.req.removeListener("finish",f),e3.removeListener("end",l),e3.removeListener("close",l),e3.removeListener("finish",f),e3.removeListener("exit",h),e3.removeListener("end",p),e3.removeListener("error",d),e3.removeListener("close",m)}};e2.exports=i},84:(e2,t8,r2)=>{e2.exports=l,l.realpath=l,l.sync=f,l.realpathSync=f,l.monkeypatch=function(){n.realpath=l,n.realpathSync=f},l.unmonkeypatch=function(){n.realpath=o,n.realpathSync=i};var n=r2(2058),o=n.realpath,i=n.realpathSync,s=process.version,a=/^v[0-5]\./.test(s),c=r2(7192);function u(e3){return e3&&e3.syscall==="realpath"&&(e3.code==="ELOOP"||e3.code==="ENOMEM"||e3.code==="ENAMETOOLONG")}function l(e3,t9,r3){if(a)return o(e3,t9,r3);typeof t9=="function"&&(r3=t9,t9=null),o(e3,t9,function(n2,o2){u(n2)?c.realpath(e3,t9,r3):r3(n2,o2)})}function f(e3,t9){if(a)return i(e3,t9);try{return i(e3,t9)}catch(r3){if(u(r3))return c.realpathSync(e3,t9);throw r3}}},7192:(e2,t8,r2)=>{var n=r2(7072),o=process.platform==="win32",i=r2(2058),s=process.env.NODE_DEBUG&&/fs/.test(process.env.NODE_DEBUG);if(n.normalize,o)var a=/(.*?)(?:[\/\\]+|$)/g;else a=/(.*?)(?:[\/]+|$)/g;if(o)var c=/^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/;else c=/^[\/]*/;t8.realpathSync=function(e3,t9){if(e3=n.resolve(e3),t9&&Object.prototype.hasOwnProperty.call(t9,e3))return t9[e3];var r3,s2,u,l,f=e3,p={},h={};function d(){var t10=c.exec(e3);r3=t10[0].length,s2=t10[0],u=t10[0],l="",o&&!h[u]&&(i.lstatSync(u),h[u]=!0)}for(d();r3<e3.length;){a.lastIndex=r3;var m=a.exec(e3);if(l=s2,s2+=m[0],u=l+m[1],r3=a.lastIndex,!(h[u]||t9&&t9[u]===u)){var g;if(t9&&Object.prototype.hasOwnProperty.call(t9,u))g=t9[u];else{var v=i.lstatSync(u);if(!v.isSymbolicLink()){h[u]=!0,t9&&(t9[u]=u);continue}var y=null;if(!o){var b=v.dev.toString(32)+":"+v.ino.toString(32);p.hasOwnProperty(b)&&(y=p[b])}y===null&&(i.statSync(u),y=i.readlinkSync(u)),g=n.resolve(l,y),t9&&(t9[u]=g),o||(p[b]=y)}e3=n.resolve(g,e3.slice(r3)),d()}}return t9&&(t9[f]=e3),e3},t8.realpath=function(e3,t9,r3){if(typeof r3!="function"&&(r3=function(e4){return typeof e4=="function"?e4:function(){var e5;if(s){var t10=new Error;e5=function(e6){e6&&(t10.message=e6.message,r4(e6=t10))}}else e5=r4;return e5;function r4(e6){if(e6){if(process.throwDeprecation)throw e6;if(!process.noDeprecation){var t11="fs: missing callback "+(e6.stack||e6.message);process.traceDeprecation?console.trace(t11):console.error(t11)}}}}()}(t9),t9=null),e3=n.resolve(e3),t9&&Object.prototype.hasOwnProperty.call(t9,e3))return process.nextTick(r3.bind(null,null,t9[e3]));var u,l,f,p,h=e3,d={},m={};function g(){var t10=c.exec(e3);u=t10[0].length,l=t10[0],f=t10[0],p="",o&&!m[f]?i.lstat(f,function(e4){if(e4)return r3(e4);m[f]=!0,v()}):process.nextTick(v)}function v(){if(u>=e3.length)return t9&&(t9[h]=e3),r3(null,e3);a.lastIndex=u;var n2=a.exec(e3);return p=l,l+=n2[0],f=p+n2[1],u=a.lastIndex,m[f]||t9&&t9[f]===f?process.nextTick(v):t9&&Object.prototype.hasOwnProperty.call(t9,f)?w(t9[f]):i.lstat(f,y)}function y(e4,n2){if(e4)return r3(e4);if(!n2.isSymbolicLink())return m[f]=!0,t9&&(t9[f]=f),process.nextTick(v);if(!o){var s2=n2.dev.toString(32)+":"+n2.ino.toString(32);if(d.hasOwnProperty(s2))return b(null,d[s2],f)}i.stat(f,function(e5){if(e5)return r3(e5);i.readlink(f,function(e6,t10){o||(d[s2]=t10),b(e6,t10)})})}function b(e4,o2,i2){if(e4)return r3(e4);var s2=n.resolve(p,o2);t9&&(t9[i2]=s2),w(s2)}function w(t10){e3=n.resolve(t10,e3.slice(u)),g()}g()}},9712:(e2,t8,r2)=>{function n(e3,t9){return Object.prototype.hasOwnProperty.call(e3,t9)}t8.alphasort=u,t8.alphasorti=c,t8.setopts=function(e3,t9,r3){if(r3||(r3={}),r3.matchBase&&t9.indexOf("/")===-1){if(r3.noglobstar)throw new Error("base matching requires globstar");t9="**/"+t9}e3.silent=!!r3.silent,e3.pattern=t9,e3.strict=r3.strict!==!1,e3.realpath=!!r3.realpath,e3.realpathCache=r3.realpathCache||Object.create(null),e3.follow=!!r3.follow,e3.dot=!!r3.dot,e3.mark=!!r3.mark,e3.nodir=!!r3.nodir,e3.nodir&&(e3.mark=!0),e3.sync=!!r3.sync,e3.nounique=!!r3.nounique,e3.nonull=!!r3.nonull,e3.nosort=!!r3.nosort,e3.nocase=!!r3.nocase,e3.stat=!!r3.stat,e3.noprocess=!!r3.noprocess,e3.absolute=!!r3.absolute,e3.maxLength=r3.maxLength||1/0,e3.cache=r3.cache||Object.create(null),e3.statCache=r3.statCache||Object.create(null),e3.symlinks=r3.symlinks||Object.create(null),function(e4,t10){e4.ignore=t10.ignore||[],Array.isArray(e4.ignore)||(e4.ignore=[e4.ignore]),e4.ignore.length&&(e4.ignore=e4.ignore.map(l))}(e3,r3),e3.changedCwd=!1;var i2=process.cwd();n(r3,"cwd")?(e3.cwd=o.resolve(r3.cwd),e3.changedCwd=e3.cwd!==i2):e3.cwd=i2,e3.root=r3.root||o.resolve(e3.cwd,"/"),e3.root=o.resolve(e3.root),process.platform==="win32"&&(e3.root=e3.root.replace(/\\/g,"/")),e3.cwdAbs=s(e3.cwd)?e3.cwd:f(e3,e3.cwd),process.platform==="win32"&&(e3.cwdAbs=e3.cwdAbs.replace(/\\/g,"/")),e3.nomount=!!r3.nomount,r3.nonegate=!0,r3.nocomment=!0,e3.minimatch=new a(t9,r3),e3.options=e3.minimatch.options},t8.ownProp=n,t8.makeAbs=f,t8.finish=function(e3){for(var t9=e3.nounique,r3=t9?[]:Object.create(null),n2=0,o2=e3.matches.length;n2<o2;n2++){var i2=e3.matches[n2];if(i2&&Object.keys(i2).length!==0){var s2=Object.keys(i2);t9?r3.push.apply(r3,s2):s2.forEach(function(e4){r3[e4]=!0})}else if(e3.nonull){var a2=e3.minimatch.globSet[n2];t9?r3.push(a2):r3[a2]=!0}}if(t9||(r3=Object.keys(r3)),e3.nosort||(r3=r3.sort(e3.nocase?c:u)),e3.mark){for(n2=0;n2<r3.length;n2++)r3[n2]=e3._mark(r3[n2]);e3.nodir&&(r3=r3.filter(function(t10){var r4=!/\/$/.test(t10),n3=e3.cache[t10]||e3.cache[f(e3,t10)];return r4&&n3&&(r4=n3!=="DIR"&&!Array.isArray(n3)),r4}))}e3.ignore.length&&(r3=r3.filter(function(t10){return!p(e3,t10)})),e3.found=r3},t8.mark=function(e3,t9){var r3=f(e3,t9),n2=e3.cache[r3],o2=t9;if(n2){var i2=n2==="DIR"||Array.isArray(n2),s2=t9.slice(-1)==="/";if(i2&&!s2?o2+="/":!i2&&s2&&(o2=o2.slice(0,-1)),o2!==t9){var a2=f(e3,o2);e3.statCache[a2]=e3.statCache[r3],e3.cache[a2]=e3.cache[r3]}}return o2},t8.isIgnored=p,t8.childrenIgnored=function(e3,t9){return!!e3.ignore.length&&e3.ignore.some(function(e4){return!(!e4.gmatcher||!e4.gmatcher.match(t9))})};var o=r2(7072),i=r2(836),s=r2(4832),a=i.Minimatch;function c(e3,t9){return e3.toLowerCase().localeCompare(t9.toLowerCase())}function u(e3,t9){return e3.localeCompare(t9)}function l(e3){var t9=null;if(e3.slice(-3)==="/**"){var r3=e3.replace(/(\/\*\*)+$/,"");t9=new a(r3,{dot:!0})}return{matcher:new a(e3,{dot:!0}),gmatcher:t9}}function f(e3,t9){var r3=t9;return r3=t9.charAt(0)==="/"?o.join(e3.root,t9):s(t9)||t9===""?t9:e3.changedCwd?o.resolve(e3.cwd,t9):o.resolve(t9),process.platform==="win32"&&(r3=r3.replace(/\\/g,"/")),r3}function p(e3,t9){return!!e3.ignore.length&&e3.ignore.some(function(e4){return e4.matcher.match(t9)||!(!e4.gmatcher||!e4.gmatcher.match(t9))})}},808:(e2,t8,r2)=>{e2.exports=b;var n=r2(2058),o=r2(84),i=r2(836),s=(i.Minimatch,r2(3352)),a=r2(467).EventEmitter,c=r2(7072),u=r2(6608),l=r2(4832),f=r2(4548),p=r2(9712),h=(p.alphasort,p.alphasorti,p.setopts),d=p.ownProp,m=r2(363),g=(r2(970),p.childrenIgnored),v=p.isIgnored,y=r2(4640);function b(e3,t9,r3){if(typeof t9=="function"&&(r3=t9,t9={}),t9||(t9={}),t9.sync){if(r3)throw new TypeError("callback provided to sync glob");return f(e3,t9)}return new x(e3,t9,r3)}b.sync=f;var w=b.GlobSync=f.GlobSync;function x(e3,t9,r3){if(typeof t9=="function"&&(r3=t9,t9=null),t9&&t9.sync){if(r3)throw new TypeError("callback provided to sync glob");return new w(e3,t9)}if(!(this instanceof x))return new x(e3,t9,r3);h(this,e3,t9),this._didRealPath=!1;var n2=this.minimatch.set.length;this.matches=new Array(n2),typeof r3=="function"&&(r3=y(r3),this.on("error",r3),this.on("end",function(e4){r3(null,e4)}));var o2=this;if(this._processing=0,this._emitQueue=[],this._processQueue=[],this.paused=!1,this.noprocess)return this;if(n2===0)return a2();for(var i2=!0,s2=0;s2<n2;s2++)this._process(this.minimatch.set[s2],s2,!1,a2);function a2(){--o2._processing,o2._processing<=0&&(i2?process.nextTick(function(){o2._finish()}):o2._finish())}i2=!1}b.glob=b,b.hasMagic=function(e3,t9){var r3=function(e4,t10){if(t10===null||typeof t10!="object")return e4;for(var r4=Object.keys(t10),n3=r4.length;n3--;)e4[r4[n3]]=t10[r4[n3]];return e4}({},t9);r3.noprocess=!0;var n2=new x(e3,r3).minimatch.set;if(!e3)return!1;if(n2.length>1)return!0;for(var o2=0;o2<n2[0].length;o2++)if(typeof n2[0][o2]!="string")return!0;return!1},b.Glob=x,s(x,a),x.prototype._finish=function(){if(u(this instanceof x),!this.aborted){if(this.realpath&&!this._didRealpath)return this._realpath();p.finish(this),this.emit("end",this.found)}},x.prototype._realpath=function(){if(!this._didRealpath){this._didRealpath=!0;var e3=this.matches.length;if(e3===0)return this._finish();for(var t9=this,r3=0;r3<this.matches.length;r3++)this._realpathSet(r3,n2)}function n2(){--e3==0&&t9._finish()}},x.prototype._realpathSet=function(e3,t9){var r3=this.matches[e3];if(!r3)return t9();var n2=Object.keys(r3),i2=this,s2=n2.length;if(s2===0)return t9();var a2=this.matches[e3]=Object.create(null);n2.forEach(function(r4,n3){r4=i2._makeAbs(r4),o.realpath(r4,i2.realpathCache,function(n4,o2){n4?n4.syscall==="stat"?a2[r4]=!0:i2.emit("error",n4):a2[o2]=!0,--s2==0&&(i2.matches[e3]=a2,t9())})})},x.prototype._mark=function(e3){return p.mark(this,e3)},x.prototype._makeAbs=function(e3){return p.makeAbs(this,e3)},x.prototype.abort=function(){this.aborted=!0,this.emit("abort")},x.prototype.pause=function(){this.paused||(this.paused=!0,this.emit("pause"))},x.prototype.resume=function(){if(this.paused){if(this.emit("resume"),this.paused=!1,this._emitQueue.length){var e3=this._emitQueue.slice(0);this._emitQueue.length=0;for(var t9=0;t9<e3.length;t9++){var r3=e3[t9];this._emitMatch(r3[0],r3[1])}}if(this._processQueue.length){var n2=this._processQueue.slice(0);for(this._processQueue.length=0,t9=0;t9<n2.length;t9++){var o2=n2[t9];this._processing--,this._process(o2[0],o2[1],o2[2],o2[3])}}}},x.prototype._process=function(e3,t9,r3,n2){if(u(this instanceof x),u(typeof n2=="function"),!this.aborted)if(this._processing++,this.paused)this._processQueue.push([e3,t9,r3,n2]);else{for(var o2,s2=0;typeof e3[s2]=="string";)s2++;switch(s2){case e3.length:return void this._processSimple(e3.join("/"),t9,n2);case 0:o2=null;break;default:o2=e3.slice(0,s2).join("/")}var a2,c2=e3.slice(s2);o2===null?a2=".":((l(o2)||l(e3.join("/")))&&(o2&&l(o2)||(o2="/"+o2)),a2=o2);var f2=this._makeAbs(a2);if(g(this,a2))return n2();c2[0]===i.GLOBSTAR?this._processGlobStar(o2,a2,f2,c2,t9,r3,n2):this._processReaddir(o2,a2,f2,c2,t9,r3,n2)}},x.prototype._processReaddir=function(e3,t9,r3,n2,o2,i2,s2){var a2=this;this._readdir(r3,i2,function(c2,u2){return a2._processReaddir2(e3,t9,r3,n2,o2,i2,u2,s2)})},x.prototype._processReaddir2=function(e3,t9,r3,n2,o2,i2,s2,a2){if(!s2)return a2();for(var u2=n2[0],l2=!!this.minimatch.negate,f2=u2._glob,p2=this.dot||f2.charAt(0)===".",h2=[],d2=0;d2<s2.length;d2++)((g2=s2[d2]).charAt(0)!=="."||p2)&&(l2&&!e3?!g2.match(u2):g2.match(u2))&&h2.push(g2);var m2=h2.length;if(m2===0)return a2();if(n2.length===1&&!this.mark&&!this.stat){for(this.matches[o2]||(this.matches[o2]=Object.create(null)),d2=0;d2<m2;d2++){var g2=h2[d2];e3&&(g2=e3!=="/"?e3+"/"+g2:e3+g2),g2.charAt(0)!=="/"||this.nomount||(g2=c.join(this.root,g2)),this._emitMatch(o2,g2)}return a2()}for(n2.shift(),d2=0;d2<m2;d2++)g2=h2[d2],e3&&(g2=e3!=="/"?e3+"/"+g2:e3+g2),this._process([g2].concat(n2),o2,i2,a2);a2()},x.prototype._emitMatch=function(e3,t9){if(!this.aborted&&!v(this,t9))if(this.paused)this._emitQueue.push([e3,t9]);else{var r3=l(t9)?t9:this._makeAbs(t9);if(this.mark&&(t9=this._mark(t9)),this.absolute&&(t9=r3),!this.matches[e3][t9]){if(this.nodir){var n2=this.cache[r3];if(n2==="DIR"||Array.isArray(n2))return}this.matches[e3][t9]=!0;var o2=this.statCache[r3];o2&&this.emit("stat",t9,o2),this.emit("match",t9)}}},x.prototype._readdirInGlobStar=function(e3,t9){if(!this.aborted){if(this.follow)return this._readdir(e3,!1,t9);var r3=this,o2=m("lstat\0"+e3,function(n2,o3){if(n2&&n2.code==="ENOENT")return t9();var i2=o3&&o3.isSymbolicLink();r3.symlinks[e3]=i2,i2||!o3||o3.isDirectory()?r3._readdir(e3,!1,t9):(r3.cache[e3]="FILE",t9())});o2&&n.lstat(e3,o2)}},x.prototype._readdir=function(e3,t9,r3){if(!this.aborted&&(r3=m("readdir\0"+e3+"\0"+t9,r3))){if(t9&&!d(this.symlinks,e3))return this._readdirInGlobStar(e3,r3);if(d(this.cache,e3)){var o2=this.cache[e3];if(!o2||o2==="FILE")return r3();if(Array.isArray(o2))return r3(null,o2)}n.readdir(e3,function(e4,t10,r4){return function(n2,o3){n2?e4._readdirError(t10,n2,r4):e4._readdirEntries(t10,o3,r4)}}(this,e3,r3))}},x.prototype._readdirEntries=function(e3,t9,r3){if(!this.aborted){if(!this.mark&&!this.stat)for(var n2=0;n2<t9.length;n2++){var o2=t9[n2];o2=e3==="/"?e3+o2:e3+"/"+o2,this.cache[o2]=!0}return this.cache[e3]=t9,r3(null,t9)}},x.prototype._readdirError=function(e3,t9,r3){if(!this.aborted){switch(t9.code){case"ENOTSUP":case"ENOTDIR":var n2=this._makeAbs(e3);if(this.cache[n2]="FILE",n2===this.cwdAbs){var o2=new Error(t9.code+" invalid cwd "+this.cwd);o2.path=this.cwd,o2.code=t9.code,this.emit("error",o2),this.abort()}break;case"ENOENT":case"ELOOP":case"ENAMETOOLONG":case"UNKNOWN":this.cache[this._makeAbs(e3)]=!1;break;default:this.cache[this._makeAbs(e3)]=!1,this.strict&&(this.emit("error",t9),this.abort()),this.silent||console.error("glob error",t9)}return r3()}},x.prototype._processGlobStar=function(e3,t9,r3,n2,o2,i2,s2){var a2=this;this._readdir(r3,i2,function(c2,u2){a2._processGlobStar2(e3,t9,r3,n2,o2,i2,u2,s2)})},x.prototype._processGlobStar2=function(e3,t9,r3,n2,o2,i2,s2,a2){if(!s2)return a2();var c2=n2.slice(1),u2=e3?[e3]:[],l2=u2.concat(c2);this._process(l2,o2,!1,a2);var f2=this.symlinks[r3],p2=s2.length;if(f2&&i2)return a2();for(var h2=0;h2<p2;h2++)if(s2[h2].charAt(0)!=="."||this.dot){var d2=u2.concat(s2[h2],c2);this._process(d2,o2,!0,a2);var m2=u2.concat(s2[h2],n2);this._process(m2,o2,!0,a2)}a2()},x.prototype._processSimple=function(e3,t9,r3){var n2=this;this._stat(e3,function(o2,i2){n2._processSimple2(e3,t9,o2,i2,r3)})},x.prototype._processSimple2=function(e3,t9,r3,n2,o2){if(this.matches[t9]||(this.matches[t9]=Object.create(null)),!n2)return o2();if(e3&&l(e3)&&!this.nomount){var i2=/[\/\\]$/.test(e3);e3.charAt(0)==="/"?e3=c.join(this.root,e3):(e3=c.resolve(this.root,e3),i2&&(e3+="/"))}process.platform==="win32"&&(e3=e3.replace(/\\/g,"/")),this._emitMatch(t9,e3),o2()},x.prototype._stat=function(e3,t9){var r3=this._makeAbs(e3),o2=e3.slice(-1)==="/";if(e3.length>this.maxLength)return t9();if(!this.stat&&d(this.cache,r3)){var i2=this.cache[r3];if(Array.isArray(i2)&&(i2="DIR"),!o2||i2==="DIR")return t9(null,i2);if(o2&&i2==="FILE")return t9()}var s2=this.statCache[r3];if(s2!==void 0){if(s2===!1)return t9(null,s2);var a2=s2.isDirectory()?"DIR":"FILE";return o2&&a2==="FILE"?t9():t9(null,a2,s2)}var c2=this,u2=m("stat\0"+r3,function(o3,i3){if(i3&&i3.isSymbolicLink())return n.stat(r3,function(n2,o4){n2?c2._stat2(e3,r3,null,i3,t9):c2._stat2(e3,r3,n2,o4,t9)});c2._stat2(e3,r3,o3,i3,t9)});u2&&n.lstat(r3,u2)},x.prototype._stat2=function(e3,t9,r3,n2,o2){if(r3&&(r3.code==="ENOENT"||r3.code==="ENOTDIR"))return this.statCache[t9]=!1,o2();var i2=e3.slice(-1)==="/";if(this.statCache[t9]=n2,t9.slice(-1)==="/"&&n2&&!n2.isDirectory())return o2(null,!1,n2);var s2=!0;return n2&&(s2=n2.isDirectory()?"DIR":"FILE"),this.cache[t9]=this.cache[t9]||s2,i2&&s2==="FILE"?o2():o2(null,s2,n2)}},4548:(e2,t8,r2)=>{e2.exports=d,d.GlobSync=m;var n=r2(2058),o=r2(84),i=r2(836),s=(i.Minimatch,r2(808).Glob,r2(970),r2(7072)),a=r2(6608),c=r2(4832),u=r2(9712),l=(u.alphasort,u.alphasorti,u.setopts),f=u.ownProp,p=u.childrenIgnored,h=u.isIgnored;function d(e3,t9){if(typeof t9=="function"||arguments.length===3)throw new TypeError(`callback provided to sync glob
|
|
17
|
+
See: https://github.com/isaacs/node-glob/issues/167`);return new m(e3,t9).found}function m(e3,t9){if(!e3)throw new Error("must provide pattern");if(typeof t9=="function"||arguments.length===3)throw new TypeError(`callback provided to sync glob
|
|
18
|
+
See: https://github.com/isaacs/node-glob/issues/167`);if(!(this instanceof m))return new m(e3,t9);if(l(this,e3,t9),this.noprocess)return this;var r3=this.minimatch.set.length;this.matches=new Array(r3);for(var n2=0;n2<r3;n2++)this._process(this.minimatch.set[n2],n2,!1);this._finish()}m.prototype._finish=function(){if(a(this instanceof m),this.realpath){var e3=this;this.matches.forEach(function(t9,r3){var n2=e3.matches[r3]=Object.create(null);for(var i2 in t9)try{i2=e3._makeAbs(i2),n2[o.realpathSync(i2,e3.realpathCache)]=!0}catch(t10){if(t10.syscall!=="stat")throw t10;n2[e3._makeAbs(i2)]=!0}})}u.finish(this)},m.prototype._process=function(e3,t9,r3){a(this instanceof m);for(var n2,o2=0;typeof e3[o2]=="string";)o2++;switch(o2){case e3.length:return void this._processSimple(e3.join("/"),t9);case 0:n2=null;break;default:n2=e3.slice(0,o2).join("/")}var s2,u2=e3.slice(o2);n2===null?s2=".":((c(n2)||c(e3.join("/")))&&(n2&&c(n2)||(n2="/"+n2)),s2=n2);var l2=this._makeAbs(s2);p(this,s2)||(u2[0]===i.GLOBSTAR?this._processGlobStar(n2,s2,l2,u2,t9,r3):this._processReaddir(n2,s2,l2,u2,t9,r3))},m.prototype._processReaddir=function(e3,t9,r3,n2,o2,i2){var a2=this._readdir(r3,i2);if(a2){for(var c2=n2[0],u2=!!this.minimatch.negate,l2=c2._glob,f2=this.dot||l2.charAt(0)===".",p2=[],h2=0;h2<a2.length;h2++)((g=a2[h2]).charAt(0)!=="."||f2)&&(u2&&!e3?!g.match(c2):g.match(c2))&&p2.push(g);var d2=p2.length;if(d2!==0)if(n2.length!==1||this.mark||this.stat)for(n2.shift(),h2=0;h2<d2;h2++){var m2;g=p2[h2],m2=e3?[e3,g]:[g],this._process(m2.concat(n2),o2,i2)}else for(this.matches[o2]||(this.matches[o2]=Object.create(null)),h2=0;h2<d2;h2++){var g=p2[h2];e3&&(g=e3.slice(-1)!=="/"?e3+"/"+g:e3+g),g.charAt(0)!=="/"||this.nomount||(g=s.join(this.root,g)),this._emitMatch(o2,g)}}},m.prototype._emitMatch=function(e3,t9){if(!h(this,t9)){var r3=this._makeAbs(t9);if(this.mark&&(t9=this._mark(t9)),this.absolute&&(t9=r3),!this.matches[e3][t9]){if(this.nodir){var n2=this.cache[r3];if(n2==="DIR"||Array.isArray(n2))return}this.matches[e3][t9]=!0,this.stat&&this._stat(t9)}}},m.prototype._readdirInGlobStar=function(e3){if(this.follow)return this._readdir(e3,!1);var t9,r3;try{r3=n.lstatSync(e3)}catch(e4){if(e4.code==="ENOENT")return null}var o2=r3&&r3.isSymbolicLink();return this.symlinks[e3]=o2,o2||!r3||r3.isDirectory()?t9=this._readdir(e3,!1):this.cache[e3]="FILE",t9},m.prototype._readdir=function(e3,t9){if(t9&&!f(this.symlinks,e3))return this._readdirInGlobStar(e3);if(f(this.cache,e3)){var r3=this.cache[e3];if(!r3||r3==="FILE")return null;if(Array.isArray(r3))return r3}try{return this._readdirEntries(e3,n.readdirSync(e3))}catch(t10){return this._readdirError(e3,t10),null}},m.prototype._readdirEntries=function(e3,t9){if(!this.mark&&!this.stat)for(var r3=0;r3<t9.length;r3++){var n2=t9[r3];n2=e3==="/"?e3+n2:e3+"/"+n2,this.cache[n2]=!0}return this.cache[e3]=t9,t9},m.prototype._readdirError=function(e3,t9){switch(t9.code){case"ENOTSUP":case"ENOTDIR":var r3=this._makeAbs(e3);if(this.cache[r3]="FILE",r3===this.cwdAbs){var n2=new Error(t9.code+" invalid cwd "+this.cwd);throw n2.path=this.cwd,n2.code=t9.code,n2}break;case"ENOENT":case"ELOOP":case"ENAMETOOLONG":case"UNKNOWN":this.cache[this._makeAbs(e3)]=!1;break;default:if(this.cache[this._makeAbs(e3)]=!1,this.strict)throw t9;this.silent||console.error("glob error",t9)}},m.prototype._processGlobStar=function(e3,t9,r3,n2,o2,i2){var s2=this._readdir(r3,i2);if(s2){var a2=n2.slice(1),c2=e3?[e3]:[],u2=c2.concat(a2);this._process(u2,o2,!1);var l2=s2.length;if(!this.symlinks[r3]||!i2){for(var f2=0;f2<l2;f2++)if(s2[f2].charAt(0)!=="."||this.dot){var p2=c2.concat(s2[f2],a2);this._process(p2,o2,!0);var h2=c2.concat(s2[f2],n2);this._process(h2,o2,!0)}}}},m.prototype._processSimple=function(e3,t9){var r3=this._stat(e3);if(this.matches[t9]||(this.matches[t9]=Object.create(null)),r3){if(e3&&c(e3)&&!this.nomount){var n2=/[\/\\]$/.test(e3);e3.charAt(0)==="/"?e3=s.join(this.root,e3):(e3=s.resolve(this.root,e3),n2&&(e3+="/"))}process.platform==="win32"&&(e3=e3.replace(/\\/g,"/")),this._emitMatch(t9,e3)}},m.prototype._stat=function(e3){var t9=this._makeAbs(e3),r3=e3.slice(-1)==="/";if(e3.length>this.maxLength)return!1;if(!this.stat&&f(this.cache,t9)){var o2=this.cache[t9];if(Array.isArray(o2)&&(o2="DIR"),!r3||o2==="DIR")return o2;if(r3&&o2==="FILE")return!1}var i2=this.statCache[t9];if(!i2){var s2;try{s2=n.lstatSync(t9)}catch(e4){if(e4&&(e4.code==="ENOENT"||e4.code==="ENOTDIR"))return this.statCache[t9]=!1,!1}if(s2&&s2.isSymbolicLink())try{i2=n.statSync(t9)}catch{i2=s2}else i2=s2}return this.statCache[t9]=i2,o2=!0,i2&&(o2=i2.isDirectory()?"DIR":"FILE"),this.cache[t9]=this.cache[t9]||o2,(!r3||o2!=="FILE")&&o2},m.prototype._mark=function(e3){return u.mark(this,e3)},m.prototype._makeAbs=function(e3){return u.makeAbs(this,e3)}},363:(e2,t8,r2)=>{var n=r2(2680),o=Object.create(null),i=r2(4640);e2.exports=n(function(e3,t9){return o[e3]?(o[e3].push(t9),null):(o[e3]=[t9],function(e4){return i(function t10(){var r3=o[e4],n2=r3.length,i2=function(e5){for(var t11=e5.length,r4=[],n3=0;n3<t11;n3++)r4[n3]=e5[n3];return r4}(arguments);try{for(var s=0;s<n2;s++)r3[s].apply(null,i2)}finally{r3.length>n2?(r3.splice(0,n2),process.nextTick(function(){t10.apply(null,i2)})):delete o[e4]}})}(e3))})},3352:(e2,t8,r2)=>{try{var n=r2(970);if(typeof n.inherits!="function")throw"";e2.exports=n.inherits}catch{e2.exports=r2(8248)}},8248:e2=>{typeof Object.create=="function"?e2.exports=function(e3,t8){e3.super_=t8,e3.prototype=Object.create(t8.prototype,{constructor:{value:e3,enumerable:!1,writable:!0,configurable:!0}})}:e2.exports=function(e3,t8){e3.super_=t8;var r2=function(){};r2.prototype=t8.prototype,e3.prototype=new r2,e3.prototype.constructor=e3}},1392:e2=>{"use strict";var t8=e2.exports=function(e3){return e3!==null&&typeof e3=="object"&&typeof e3.pipe=="function"};t8.writable=function(e3){return t8(e3)&&e3.writable!==!1&&typeof e3._write=="function"&&typeof e3._writableState=="object"},t8.readable=function(e3){return t8(e3)&&e3.readable!==!1&&typeof e3._read=="function"&&typeof e3._readableState=="object"},t8.duplex=function(e3){return t8.writable(e3)&&t8.readable(e3)},t8.transform=function(e3){return t8.duplex(e3)&&typeof e3._transform=="function"&&typeof e3._transformState=="object"}},9268:(e2,t8,r2)=>{var n;function o(e3,t9,r3){if(typeof t9=="function"&&(r3=t9,t9={}),!r3){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(r4,n2){o(e3,t9||{},function(e4,t10){e4?n2(e4):r4(t10)})})}n(e3,t9||{},function(e4,n2){e4&&(e4.code==="EACCES"||t9&&t9.ignoreErrors)&&(e4=null,n2=!1),r3(e4,n2)})}r2(2058),n=process.platform==="win32"||global.TESTING_WINDOWS?r2(8340):r2(8692),e2.exports=o,o.sync=function(e3,t9){try{return n.sync(e3,t9||{})}catch(e4){if(t9&&t9.ignoreErrors||e4.code==="EACCES")return!1;throw e4}}},8692:(e2,t8,r2)=>{e2.exports=o,o.sync=function(e3,t9){return i(n.statSync(e3),t9)};var n=r2(2058);function o(e3,t9,r3){n.stat(e3,function(e4,n2){r3(e4,!e4&&i(n2,t9))})}function i(e3,t9){return e3.isFile()&&function(e4,t10){var r3=e4.mode,n2=e4.uid,o2=e4.gid,i2=t10.uid!==void 0?t10.uid:process.getuid&&process.getuid(),s=t10.gid!==void 0?t10.gid:process.getgid&&process.getgid(),a=parseInt("100",8),c=parseInt("010",8);return r3&parseInt("001",8)||r3&c&&o2===s||r3&a&&n2===i2||r3&(a|c)&&i2===0}(e3,t9)}},8340:(e2,t8,r2)=>{e2.exports=i,i.sync=function(e3,t9){return o(n.statSync(e3),e3,t9)};var n=r2(2058);function o(e3,t9,r3){return!(!e3.isSymbolicLink()&&!e3.isFile())&&function(e4,t10){var r4=t10.pathExt!==void 0?t10.pathExt:process.env.PATHEXT;if(!r4||(r4=r4.split(";")).indexOf("")!==-1)return!0;for(var n2=0;n2<r4.length;n2++){var o2=r4[n2].toLowerCase();if(o2&&e4.substr(-o2.length).toLowerCase()===o2)return!0}return!1}(t9,r3)}function i(e3,t9,r3){n.stat(e3,function(n2,i2){r3(n2,!n2&&o(i2,e3,t9))})}},2941:(e2,t8,r2)=>{"use strict";let n=r2(8558),o=new Map([[18,"Mojave"],[17,"High Sierra"],[16,"Sierra"],[15,"El Capitan"],[14,"Yosemite"],[13,"Mavericks"],[12,"Mountain Lion"],[11,"Lion"],[10,"Snow Leopard"],[9,"Leopard"],[8,"Tiger"],[7,"Panther"],[6,"Jaguar"],[5,"Puma"]]),i=e3=>(e3=Number((e3||n.release()).split(".")[0]),{name:o.get(e3),version:"10."+(e3-4)});e2.exports=i,e2.exports.default=i},836:(e2,t8,r2)=>{e2.exports=p,p.Minimatch=h;var n={sep:"/"};try{n=r2(7072)}catch{}var o=p.GLOBSTAR=h.GLOBSTAR={},i=r2(1620),s={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}},a="[^/]",c=a+"*?",u="().*{}+?[]^$\\!".split("").reduce(function(e3,t9){return e3[t9]=!0,e3},{}),l=/\/+/;function f(e3,t9){e3=e3||{},t9=t9||{};var r3={};return Object.keys(t9).forEach(function(e4){r3[e4]=t9[e4]}),Object.keys(e3).forEach(function(t10){r3[t10]=e3[t10]}),r3}function p(e3,t9,r3){if(typeof t9!="string")throw new TypeError("glob pattern string required");return r3||(r3={}),!(!r3.nocomment&&t9.charAt(0)==="#")&&(t9.trim()===""?e3==="":new h(t9,r3).match(e3))}function h(e3,t9){if(!(this instanceof h))return new h(e3,t9);if(typeof e3!="string")throw new TypeError("glob pattern string required");t9||(t9={}),e3=e3.trim(),n.sep!=="/"&&(e3=e3.split(n.sep).join("/")),this.options=t9,this.set=[],this.pattern=e3,this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.make()}function d(e3,t9){if(t9||(t9=this instanceof h?this.options:{}),(e3=e3===void 0?this.pattern:e3)===void 0)throw new TypeError("undefined pattern");return t9.nobrace||!e3.match(/\{.*\}/)?[e3]:i(e3)}p.filter=function(e3,t9){return t9=t9||{},function(r3,n2,o2){return p(r3,e3,t9)}},p.defaults=function(e3){if(!e3||!Object.keys(e3).length)return p;var t9=p,r3=function(r4,n2,o2){return t9.minimatch(r4,n2,f(e3,o2))};return r3.Minimatch=function(r4,n2){return new t9.Minimatch(r4,f(e3,n2))},r3},h.defaults=function(e3){return e3&&Object.keys(e3).length?p.defaults(e3).Minimatch:h},h.prototype.debug=function(){},h.prototype.make=function(){if(!this._made){var e3=this.pattern,t9=this.options;if(t9.nocomment||e3.charAt(0)!=="#")if(e3){this.parseNegate();var r3=this.globSet=this.braceExpand();t9.debug&&(this.debug=console.error),this.debug(this.pattern,r3),r3=this.globParts=r3.map(function(e4){return e4.split(l)}),this.debug(this.pattern,r3),r3=r3.map(function(e4,t10,r4){return e4.map(this.parse,this)},this),this.debug(this.pattern,r3),r3=r3.filter(function(e4){return e4.indexOf(!1)===-1}),this.debug(this.pattern,r3),this.set=r3}else this.empty=!0;else this.comment=!0}},h.prototype.parseNegate=function(){var e3=this.pattern,t9=!1,r3=0;if(!this.options.nonegate){for(var n2=0,o2=e3.length;n2<o2&&e3.charAt(n2)==="!";n2++)t9=!t9,r3++;r3&&(this.pattern=e3.substr(r3)),this.negate=t9}},p.braceExpand=function(e3,t9){return d(e3,t9)},h.prototype.braceExpand=d,h.prototype.parse=function(e3,t9){if(e3.length>65536)throw new TypeError("pattern is too long");var r3=this.options;if(!r3.noglobstar&&e3==="**")return o;if(e3==="")return"";var n2,i2="",l2=!!r3.nocase,f2=!1,p2=[],h2=[],d2=!1,g=-1,v=-1,y=e3.charAt(0)==="."?"":r3.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",b=this;function w(){if(n2){switch(n2){case"*":i2+=c,l2=!0;break;case"?":i2+=a,l2=!0;break;default:i2+="\\"+n2}b.debug("clearStateChar %j %j",n2,i2),n2=!1}}for(var x,S=0,P=e3.length;S<P&&(x=e3.charAt(S));S++)if(this.debug("%s %s %s %j",e3,S,i2,x),f2&&u[x])i2+="\\"+x,f2=!1;else switch(x){case"/":return!1;case"\\":w(),f2=!0;continue;case"?":case"*":case"+":case"@":case"!":if(this.debug("%s %s %s %j <-- stateChar",e3,S,i2,x),d2){this.debug(" in class"),x==="!"&&S===v+1&&(x="^"),i2+=x;continue}b.debug("call clearStateChar %j",n2),w(),n2=x,r3.noext&&w();continue;case"(":if(d2){i2+="(";continue}if(!n2){i2+="\\(";continue}p2.push({type:n2,start:S-1,reStart:i2.length,open:s[n2].open,close:s[n2].close}),i2+=n2==="!"?"(?:(?!(?:":"(?:",this.debug("plType %j %j",n2,i2),n2=!1;continue;case")":if(d2||!p2.length){i2+="\\)";continue}w(),l2=!0;var O=p2.pop();i2+=O.close,O.type==="!"&&h2.push(O),O.reEnd=i2.length;continue;case"|":if(d2||!p2.length||f2){i2+="\\|",f2=!1;continue}w(),i2+="|";continue;case"[":if(w(),d2){i2+="\\"+x;continue}d2=!0,v=S,g=i2.length,i2+=x;continue;case"]":if(S===v+1||!d2){i2+="\\"+x,f2=!1;continue}if(d2){var I=e3.substring(v+1,S);try{RegExp("["+I+"]")}catch{var E=this.parse(I,m);i2=i2.substr(0,g)+"\\["+E[0]+"\\]",l2=l2||E[1],d2=!1;continue}}l2=!0,d2=!1,i2+=x;continue;default:w(),f2?f2=!1:!u[x]||x==="^"&&d2||(i2+="\\"),i2+=x}for(d2&&(I=e3.substr(v+1),E=this.parse(I,m),i2=i2.substr(0,g)+"\\["+E[0],l2=l2||E[1]),O=p2.pop();O;O=p2.pop()){var j=i2.slice(O.reStart+O.open.length);this.debug("setting tail",i2,O),j=j.replace(/((?:\\{2}){0,64})(\\?)\|/g,function(e4,t10,r4){return r4||(r4="\\"),t10+t10+r4+"|"}),this.debug(`tail=%j
|
|
19
|
+
%s`,j,j,O,i2);var _=O.type==="*"?c:O.type==="?"?a:"\\"+O.type;l2=!0,i2=i2.slice(0,O.reStart)+_+"\\("+j}w(),f2&&(i2+="\\\\");var A=!1;switch(i2.charAt(0)){case".":case"[":case"(":A=!0}for(var k=h2.length-1;k>-1;k--){var N=h2[k],F=i2.slice(0,N.reStart),C=i2.slice(N.reStart,N.reEnd-8),M=i2.slice(N.reEnd-8,N.reEnd),V=i2.slice(N.reEnd);M+=V;var T=F.split("(").length-1,D=V;for(S=0;S<T;S++)D=D.replace(/\)[+*?]?/,"");var L="";(V=D)===""&&t9!==m&&(L="$"),i2=F+C+V+L+M}if(i2!==""&&l2&&(i2="(?=.)"+i2),A&&(i2=y+i2),t9===m)return[i2,l2];if(!l2)return e3.replace(/\\(.)/g,"$1");var $=r3.nocase?"i":"";try{var B=new RegExp("^"+i2+"$",$)}catch{return new RegExp("$.")}return B._glob=e3,B._src=i2,B};var m={};p.makeRe=function(e3,t9){return new h(e3,t9||{}).makeRe()},h.prototype.makeRe=function(){if(this.regexp||this.regexp===!1)return this.regexp;var e3=this.set;if(!e3.length)return this.regexp=!1,this.regexp;var t9=this.options,r3=t9.noglobstar?c:t9.dot?"(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?":"(?:(?!(?:\\/|^)\\.).)*?",n2=t9.nocase?"i":"",i2=e3.map(function(e4){return e4.map(function(e5){return e5===o?r3:typeof e5=="string"?e5.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):e5._src}).join("\\/")}).join("|");i2="^(?:"+i2+")$",this.negate&&(i2="^(?!"+i2+").*$");try{this.regexp=new RegExp(i2,n2)}catch{this.regexp=!1}return this.regexp},p.match=function(e3,t9,r3){var n2=new h(t9,r3=r3||{});return e3=e3.filter(function(e4){return n2.match(e4)}),n2.options.nonull&&!e3.length&&e3.push(t9),e3},h.prototype.match=function(e3,t9){if(this.debug("match",e3,this.pattern),this.comment)return!1;if(this.empty)return e3==="";if(e3==="/"&&t9)return!0;var r3=this.options;n.sep!=="/"&&(e3=e3.split(n.sep).join("/")),e3=e3.split(l),this.debug(this.pattern,"split",e3);var o2,i2,s2=this.set;for(this.debug(this.pattern,"set",s2),i2=e3.length-1;i2>=0&&!(o2=e3[i2]);i2--);for(i2=0;i2<s2.length;i2++){var a2=s2[i2],c2=e3;if(r3.matchBase&&a2.length===1&&(c2=[o2]),this.matchOne(c2,a2,t9))return!!r3.flipNegate||!this.negate}return!r3.flipNegate&&this.negate},h.prototype.matchOne=function(e3,t9,r3){var n2=this.options;this.debug("matchOne",{this:this,file:e3,pattern:t9}),this.debug("matchOne",e3.length,t9.length);for(var i2=0,s2=0,a2=e3.length,c2=t9.length;i2<a2&&s2<c2;i2++,s2++){this.debug("matchOne loop");var u2,l2=t9[s2],f2=e3[i2];if(this.debug(t9,l2,f2),l2===!1)return!1;if(l2===o){this.debug("GLOBSTAR",[t9,l2,f2]);var p2=i2,h2=s2+1;if(h2===c2){for(this.debug("** at the end");i2<a2;i2++)if(e3[i2]==="."||e3[i2]===".."||!n2.dot&&e3[i2].charAt(0)===".")return!1;return!0}for(;p2<a2;){var d2=e3[p2];if(this.debug(`
|
|
20
|
+
globstar while`,e3,p2,t9,h2,d2),this.matchOne(e3.slice(p2),t9.slice(h2),r3))return this.debug("globstar found match!",p2,a2,d2),!0;if(d2==="."||d2===".."||!n2.dot&&d2.charAt(0)==="."){this.debug("dot detected!",e3,p2,t9,h2);break}this.debug("globstar swallow a segment, and continue"),p2++}return!(!r3||(this.debug(`
|
|
21
|
+
>>> no match, partial?`,e3,p2,t9,h2),p2!==a2))}if(typeof l2=="string"?(u2=n2.nocase?f2.toLowerCase()===l2.toLowerCase():f2===l2,this.debug("string match",l2,f2,u2)):(u2=f2.match(l2),this.debug("pattern match",l2,f2,u2)),!u2)return!1}if(i2===a2&&s2===c2)return!0;if(i2===a2)return r3;if(s2===c2)return i2===a2-1&&e3[i2]==="";throw new Error("wtf?")}},9480:e2=>{"use strict";e2.exports=function(e3){try{return e3()}catch{}}},9584:(e2,t8,r2)=>{"use strict";let n=r2(7072),o=r2(3032);e2.exports=e3=>{let t9;e3=Object.assign({cwd:process.cwd(),path:process.env[o()]},e3);let r3=n.resolve(e3.cwd),i=[];for(;t9!==r3;)i.push(n.join(r3,"node_modules/.bin")),t9=r3,r3=n.resolve(r3,"..");return i.push(n.dirname(process.execPath)),i.concat(e3.path).join(n.delimiter)},e2.exports.env=t9=>{t9=Object.assign({env:process.env},t9);let r3=Object.assign({},t9.env),n2=o({env:r3});return t9.path=r3[n2],r3[n2]=e2.exports(t9),r3}},4640:(e2,t8,r2)=>{var n=r2(2680);function o(e3){var t9=function(){return t9.called?t9.value:(t9.called=!0,t9.value=e3.apply(this,arguments))};return t9.called=!1,t9}function i(e3){var t9=function(){if(t9.called)throw new Error(t9.onceError);return t9.called=!0,t9.value=e3.apply(this,arguments)},r3=e3.name||"Function wrapped with `once`";return t9.onceError=r3+" shouldn't be called more than once",t9.called=!1,t9}e2.exports=n(o),e2.exports.strict=n(i),o.proto=o(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return o(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return i(this)},configurable:!0})})},2288:(e2,t8,r2)=>{"use strict";let n=r2(8558),o=r2(2941),i=r2(6468);e2.exports=(e3,t9)=>{if(!e3&&t9)throw new Error("You can't specify a `release` without specifying `platform`");let r3;if((e3=e3||n.platform())==="darwin"){t9||n.platform()!=="darwin"||(t9=n.release());let e4=t9?Number(t9.split(".")[0])>15?"macOS":"OS X":"macOS";return r3=t9?o(t9).name:"",e4+(r3?" "+r3:"")}return e3==="linux"?(t9||n.platform()!=="linux"||(t9=n.release()),r3=t9?t9.replace(/^(\d+\.\d+).*/,"$1"):"","Linux"+(r3?" "+r3:"")):e3==="win32"?(t9||n.platform()!=="win32"||(t9=n.release()),r3=t9?i(t9):"","Windows"+(r3?" "+r3:"")):e3}},1548:e2=>{"use strict";e2.exports=(e3,t8)=>(t8=t8||(()=>{}),e3.then(e4=>new Promise(e5=>{e5(t8())}).then(()=>e4),e4=>new Promise(e5=>{e5(t8())}).then(()=>{throw e4})))},4832:e2=>{"use strict";function t8(e3){return e3.charAt(0)==="/"}function r2(e3){var t9=/^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/.exec(e3),r3=t9[1]||"",n=!!(r3&&r3.charAt(1)!==":");return!!(t9[2]||n)}e2.exports=process.platform==="win32"?r2:t8,e2.exports.posix=t8,e2.exports.win32=r2},3032:e2=>{"use strict";e2.exports=e3=>{let t8=(e3=e3||{}).env||process.env;return(e3.platform||process.platform)!=="win32"?"PATH":Object.keys(t8).find(e4=>e4.toUpperCase()==="PATH")||"Path"}},8984:(e2,t8,r2)=>{var n=r2(4640),o=r2(9988),i=r2(2058),s=function(){},a=/^v?\.0/.test(process.version),c=function(e3){return typeof e3=="function"},u=function(e3){e3()},l=function(e3,t9){return e3.pipe(t9)};e2.exports=function(){var e3,t9=Array.prototype.slice.call(arguments),r3=c(t9[t9.length-1]||s)&&t9.pop()||s;if(Array.isArray(t9[0])&&(t9=t9[0]),t9.length<2)throw new Error("pump requires two streams per minimum");var f=t9.map(function(l2,p){var h=p<t9.length-1;return function(e4,t10,r4,u2){u2=n(u2);var l3=!1;e4.on("close",function(){l3=!0}),o(e4,{readable:t10,writable:r4},function(e5){if(e5)return u2(e5);l3=!0,u2()});var f2=!1;return function(t11){if(!l3&&!f2)return f2=!0,function(e5){return!!a&&!!i&&(e5 instanceof(i.ReadStream||s)||e5 instanceof(i.WriteStream||s))&&c(e5.close)}(e4)?e4.close(s):function(e5){return e5.setHeader&&c(e5.abort)}(e4)?e4.abort():c(e4.destroy)?e4.destroy():void u2(t11||new Error("stream was destroyed"))}}(l2,h,p>0,function(t10){e3||(e3=t10),t10&&f.forEach(u),h||(f.forEach(u),r3(e3))})});return t9.reduce(l)}},1716:(e2,t8)=>{var r2;t8=e2.exports=Y,r2=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?function(){var e3=Array.prototype.slice.call(arguments,0);e3.unshift("SEMVER"),console.log.apply(console,e3)}:function(){},t8.SEMVER_SPEC_VERSION="2.0.0";var n=256,o=Number.MAX_SAFE_INTEGER||9007199254740991,i=t8.re=[],s=t8.src=[],a=0,c=a++;s[c]="0|[1-9]\\d*";var u=a++;s[u]="[0-9]+";var l=a++;s[l]="\\d*[a-zA-Z-][a-zA-Z0-9-]*";var f=a++;s[f]="("+s[c]+")\\.("+s[c]+")\\.("+s[c]+")";var p=a++;s[p]="("+s[u]+")\\.("+s[u]+")\\.("+s[u]+")";var h=a++;s[h]="(?:"+s[c]+"|"+s[l]+")";var d=a++;s[d]="(?:"+s[u]+"|"+s[l]+")";var m=a++;s[m]="(?:-("+s[h]+"(?:\\."+s[h]+")*))";var g=a++;s[g]="(?:-?("+s[d]+"(?:\\."+s[d]+")*))";var v=a++;s[v]="[0-9A-Za-z-]+";var y=a++;s[y]="(?:\\+("+s[v]+"(?:\\."+s[v]+")*))";var b=a++,w="v?"+s[f]+s[m]+"?"+s[y]+"?";s[b]="^"+w+"$";var x="[v=\\s]*"+s[p]+s[g]+"?"+s[y]+"?",S=a++;s[S]="^"+x+"$";var P=a++;s[P]="((?:<|>)?=?)";var O=a++;s[O]=s[u]+"|x|X|\\*";var I=a++;s[I]=s[c]+"|x|X|\\*";var E=a++;s[E]="[v=\\s]*("+s[I]+")(?:\\.("+s[I]+")(?:\\.("+s[I]+")(?:"+s[m]+")?"+s[y]+"?)?)?";var j=a++;s[j]="[v=\\s]*("+s[O]+")(?:\\.("+s[O]+")(?:\\.("+s[O]+")(?:"+s[g]+")?"+s[y]+"?)?)?";var _=a++;s[_]="^"+s[P]+"\\s*"+s[E]+"$";var A=a++;s[A]="^"+s[P]+"\\s*"+s[j]+"$";var k=a++;s[k]="(?:^|[^\\d])(\\d{1,16})(?:\\.(\\d{1,16}))?(?:\\.(\\d{1,16}))?(?:$|[^\\d])";var N=a++;s[N]="(?:~>?)";var F=a++;s[F]="(\\s*)"+s[N]+"\\s+",i[F]=new RegExp(s[F],"g");var C=a++;s[C]="^"+s[N]+s[E]+"$";var M=a++;s[M]="^"+s[N]+s[j]+"$";var V=a++;s[V]="(?:\\^)";var T=a++;s[T]="(\\s*)"+s[V]+"\\s+",i[T]=new RegExp(s[T],"g");var D=a++;s[D]="^"+s[V]+s[E]+"$";var L=a++;s[L]="^"+s[V]+s[j]+"$";var $=a++;s[$]="^"+s[P]+"\\s*("+x+")$|^$";var B=a++;s[B]="^"+s[P]+"\\s*("+w+")$|^$";var R=a++;s[R]="(\\s*)"+s[P]+"\\s*("+x+"|"+s[E]+")",i[R]=new RegExp(s[R],"g");var G=a++;s[G]="^\\s*("+s[E]+")\\s+-\\s+("+s[E]+")\\s*$";var W=a++;s[W]="^\\s*("+s[j]+")\\s+-\\s+("+s[j]+")\\s*$";var U=a++;s[U]="(<|>)?=?\\s*\\*";for(var K=0;K<35;K++)r2(K,s[K]),i[K]||(i[K]=new RegExp(s[K]));function q(e3,t9){if(t9&&typeof t9=="object"||(t9={loose:!!t9,includePrerelease:!1}),e3 instanceof Y)return e3;if(typeof e3!="string"||e3.length>n||!(t9.loose?i[S]:i[b]).test(e3))return null;try{return new Y(e3,t9)}catch{return null}}function Y(e3,t9){if(t9&&typeof t9=="object"||(t9={loose:!!t9,includePrerelease:!1}),e3 instanceof Y){if(e3.loose===t9.loose)return e3;e3=e3.version}else if(typeof e3!="string")throw new TypeError("Invalid Version: "+e3);if(e3.length>n)throw new TypeError("version is longer than "+n+" characters");if(!(this instanceof Y))return new Y(e3,t9);r2("SemVer",e3,t9),this.options=t9,this.loose=!!t9.loose;var s2=e3.trim().match(t9.loose?i[S]:i[b]);if(!s2)throw new TypeError("Invalid Version: "+e3);if(this.raw=e3,this.major=+s2[1],this.minor=+s2[2],this.patch=+s2[3],this.major>o||this.major<0)throw new TypeError("Invalid major version");if(this.minor>o||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>o||this.patch<0)throw new TypeError("Invalid patch version");s2[4]?this.prerelease=s2[4].split(".").map(function(e4){if(/^[0-9]+$/.test(e4)){var t10=+e4;if(t10>=0&&t10<o)return t10}return e4}):this.prerelease=[],this.build=s2[5]?s2[5].split("."):[],this.format()}t8.parse=q,t8.valid=function(e3,t9){var r3=q(e3,t9);return r3?r3.version:null},t8.clean=function(e3,t9){var r3=q(e3.trim().replace(/^[=v]+/,""),t9);return r3?r3.version:null},t8.SemVer=Y,Y.prototype.format=function(){return this.version=this.major+"."+this.minor+"."+this.patch,this.prerelease.length&&(this.version+="-"+this.prerelease.join(".")),this.version},Y.prototype.toString=function(){return this.version},Y.prototype.compare=function(e3){return r2("SemVer.compare",this.version,this.options,e3),e3 instanceof Y||(e3=new Y(e3,this.options)),this.compareMain(e3)||this.comparePre(e3)},Y.prototype.compareMain=function(e3){return e3 instanceof Y||(e3=new Y(e3,this.options)),J(this.major,e3.major)||J(this.minor,e3.minor)||J(this.patch,e3.patch)},Y.prototype.comparePre=function(e3){if(e3 instanceof Y||(e3=new Y(e3,this.options)),this.prerelease.length&&!e3.prerelease.length)return-1;if(!this.prerelease.length&&e3.prerelease.length)return 1;if(!this.prerelease.length&&!e3.prerelease.length)return 0;var t9=0;do{var n2=this.prerelease[t9],o2=e3.prerelease[t9];if(r2("prerelease compare",t9,n2,o2),n2===void 0&&o2===void 0)return 0;if(o2===void 0)return 1;if(n2===void 0)return-1;if(n2!==o2)return J(n2,o2)}while(++t9)},Y.prototype.inc=function(e3,t9){switch(e3){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",t9);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",t9);break;case"prepatch":this.prerelease.length=0,this.inc("patch",t9),this.inc("pre",t9);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",t9),this.inc("pre",t9);break;case"major":this.minor===0&&this.patch===0&&this.prerelease.length!==0||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":this.patch===0&&this.prerelease.length!==0||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":if(this.prerelease.length===0)this.prerelease=[0];else{for(var r3=this.prerelease.length;--r3>=0;)typeof this.prerelease[r3]=="number"&&(this.prerelease[r3]++,r3=-2);r3===-1&&this.prerelease.push(0)}t9&&(this.prerelease[0]===t9?isNaN(this.prerelease[1])&&(this.prerelease=[t9,0]):this.prerelease=[t9,0]);break;default:throw new Error("invalid increment argument: "+e3)}return this.format(),this.raw=this.version,this},t8.inc=function(e3,t9,r3,n2){typeof r3=="string"&&(n2=r3,r3=void 0);try{return new Y(e3,r3).inc(t9,n2).version}catch{return null}},t8.diff=function(e3,t9){if(Z(e3,t9))return null;var r3=q(e3),n2=q(t9);if(r3.prerelease.length||n2.prerelease.length){for(var o2 in r3)if((o2==="major"||o2==="minor"||o2==="patch")&&r3[o2]!==n2[o2])return"pre"+o2;return"prerelease"}for(var o2 in r3)if((o2==="major"||o2==="minor"||o2==="patch")&&r3[o2]!==n2[o2])return o2},t8.compareIdentifiers=J;var H=/^[0-9]+$/;function J(e3,t9){var r3=H.test(e3),n2=H.test(t9);return r3&&n2&&(e3=+e3,t9=+t9),r3&&!n2?-1:n2&&!r3?1:e3<t9?-1:e3>t9?1:0}function z(e3,t9,r3){return new Y(e3,r3).compare(new Y(t9,r3))}function Q(e3,t9,r3){return z(e3,t9,r3)>0}function X(e3,t9,r3){return z(e3,t9,r3)<0}function Z(e3,t9,r3){return z(e3,t9,r3)===0}function ee(e3,t9,r3){return z(e3,t9,r3)!==0}function te(e3,t9,r3){return z(e3,t9,r3)>=0}function re(e3,t9,r3){return z(e3,t9,r3)<=0}function ne(e3,t9,r3,n2){var o2;switch(t9){case"===":typeof e3=="object"&&(e3=e3.version),typeof r3=="object"&&(r3=r3.version),o2=e3===r3;break;case"!==":typeof e3=="object"&&(e3=e3.version),typeof r3=="object"&&(r3=r3.version),o2=e3!==r3;break;case"":case"=":case"==":o2=Z(e3,r3,n2);break;case"!=":o2=ee(e3,r3,n2);break;case">":o2=Q(e3,r3,n2);break;case">=":o2=te(e3,r3,n2);break;case"<":o2=X(e3,r3,n2);break;case"<=":o2=re(e3,r3,n2);break;default:throw new TypeError("Invalid operator: "+t9)}return o2}function oe(e3,t9){if(t9&&typeof t9=="object"||(t9={loose:!!t9,includePrerelease:!1}),e3 instanceof oe){if(e3.loose===!!t9.loose)return e3;e3=e3.value}if(!(this instanceof oe))return new oe(e3,t9);r2("comparator",e3,t9),this.options=t9,this.loose=!!t9.loose,this.parse(e3),this.semver===ie?this.value="":this.value=this.operator+this.semver.version,r2("comp",this)}t8.rcompareIdentifiers=function(e3,t9){return J(t9,e3)},t8.major=function(e3,t9){return new Y(e3,t9).major},t8.minor=function(e3,t9){return new Y(e3,t9).minor},t8.patch=function(e3,t9){return new Y(e3,t9).patch},t8.compare=z,t8.compareLoose=function(e3,t9){return z(e3,t9,!0)},t8.rcompare=function(e3,t9,r3){return z(t9,e3,r3)},t8.sort=function(e3,r3){return e3.sort(function(e4,n2){return t8.compare(e4,n2,r3)})},t8.rsort=function(e3,r3){return e3.sort(function(e4,n2){return t8.rcompare(e4,n2,r3)})},t8.gt=Q,t8.lt=X,t8.eq=Z,t8.neq=ee,t8.gte=te,t8.lte=re,t8.cmp=ne,t8.Comparator=oe;var ie={};function se(e3,t9){if(t9&&typeof t9=="object"||(t9={loose:!!t9,includePrerelease:!1}),e3 instanceof se)return e3.loose===!!t9.loose&&e3.includePrerelease===!!t9.includePrerelease?e3:new se(e3.raw,t9);if(e3 instanceof oe)return new se(e3.value,t9);if(!(this instanceof se))return new se(e3,t9);if(this.options=t9,this.loose=!!t9.loose,this.includePrerelease=!!t9.includePrerelease,this.raw=e3,this.set=e3.split(/\s*\|\|\s*/).map(function(e4){return this.parseRange(e4.trim())},this).filter(function(e4){return e4.length}),!this.set.length)throw new TypeError("Invalid SemVer Range: "+e3);this.format()}function ae(e3){return!e3||e3.toLowerCase()==="x"||e3==="*"}function ce(e3,t9,r3,n2,o2,i2,s2,a2,c2,u2,l2,f2,p2){return((t9=ae(r3)?"":ae(n2)?">="+r3+".0.0":ae(o2)?">="+r3+"."+n2+".0":">="+t9)+" "+(a2=ae(c2)?"":ae(u2)?"<"+(+c2+1)+".0.0":ae(l2)?"<"+c2+"."+(+u2+1)+".0":f2?"<="+c2+"."+u2+"."+l2+"-"+f2:"<="+a2)).trim()}function ue(e3,t9,n2){for(var o2=0;o2<e3.length;o2++)if(!e3[o2].test(t9))return!1;if(n2||(n2={}),t9.prerelease.length&&!n2.includePrerelease){for(o2=0;o2<e3.length;o2++)if(r2(e3[o2].semver),e3[o2].semver!==ie&&e3[o2].semver.prerelease.length>0){var i2=e3[o2].semver;if(i2.major===t9.major&&i2.minor===t9.minor&&i2.patch===t9.patch)return!0}return!1}return!0}function le(e3,t9,r3){try{t9=new se(t9,r3)}catch{return!1}return t9.test(e3)}function fe(e3,t9,r3,n2){var o2,i2,s2,a2,c2;switch(e3=new Y(e3,n2),t9=new se(t9,n2),r3){case">":o2=Q,i2=re,s2=X,a2=">",c2=">=";break;case"<":o2=X,i2=te,s2=Q,a2="<",c2="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(le(e3,t9,n2))return!1;for(var u2=0;u2<t9.set.length;++u2){var l2=t9.set[u2],f2=null,p2=null;if(l2.forEach(function(e4){e4.semver===ie&&(e4=new oe(">=0.0.0")),f2=f2||e4,p2=p2||e4,o2(e4.semver,f2.semver,n2)?f2=e4:s2(e4.semver,p2.semver,n2)&&(p2=e4)}),f2.operator===a2||f2.operator===c2||(!p2.operator||p2.operator===a2)&&i2(e3,p2.semver)||p2.operator===c2&&s2(e3,p2.semver))return!1}return!0}oe.prototype.parse=function(e3){var t9=this.options.loose?i[$]:i[B],r3=e3.match(t9);if(!r3)throw new TypeError("Invalid comparator: "+e3);this.operator=r3[1],this.operator==="="&&(this.operator=""),r3[2]?this.semver=new Y(r3[2],this.options.loose):this.semver=ie},oe.prototype.toString=function(){return this.value},oe.prototype.test=function(e3){return r2("Comparator.test",e3,this.options.loose),this.semver===ie||(typeof e3=="string"&&(e3=new Y(e3,this.options)),ne(e3,this.operator,this.semver,this.options))},oe.prototype.intersects=function(e3,t9){if(!(e3 instanceof oe))throw new TypeError("a Comparator is required");var r3;if(t9&&typeof t9=="object"||(t9={loose:!!t9,includePrerelease:!1}),this.operator==="")return r3=new se(e3.value,t9),le(this.value,r3,t9);if(e3.operator==="")return r3=new se(this.value,t9),le(e3.semver,r3,t9);var n2=!(this.operator!==">="&&this.operator!==">"||e3.operator!==">="&&e3.operator!==">"),o2=!(this.operator!=="<="&&this.operator!=="<"||e3.operator!=="<="&&e3.operator!=="<"),i2=this.semver.version===e3.semver.version,s2=!(this.operator!==">="&&this.operator!=="<="||e3.operator!==">="&&e3.operator!=="<="),a2=ne(this.semver,"<",e3.semver,t9)&&(this.operator===">="||this.operator===">")&&(e3.operator==="<="||e3.operator==="<"),c2=ne(this.semver,">",e3.semver,t9)&&(this.operator==="<="||this.operator==="<")&&(e3.operator===">="||e3.operator===">");return n2||o2||i2&&s2||a2||c2},t8.Range=se,se.prototype.format=function(){return this.range=this.set.map(function(e3){return e3.join(" ").trim()}).join("||").trim(),this.range},se.prototype.toString=function(){return this.range},se.prototype.parseRange=function(e3){var t9=this.options.loose;e3=e3.trim();var n2=t9?i[W]:i[G];e3=e3.replace(n2,ce),r2("hyphen replace",e3),e3=e3.replace(i[R],"$1$2$3"),r2("comparator trim",e3,i[R]),e3=(e3=(e3=e3.replace(i[F],"$1~")).replace(i[T],"$1^")).split(/\s+/).join(" ");var o2=t9?i[$]:i[B],s2=e3.split(" ").map(function(e4){return function(e5,t10){return r2("comp",e5,t10),e5=function(e6,t11){return e6.trim().split(/\s+/).map(function(e7){return function(e8,t12){r2("caret",e8,t12),t12&&typeof t12=="object"||(t12={loose:!!t12,includePrerelease:!1});var n3=t12.loose?i[L]:i[D];return e8.replace(n3,function(t13,n4,o3,i2,s3){var a2;return r2("caret",e8,t13,n4,o3,i2,s3),ae(n4)?a2="":ae(o3)?a2=">="+n4+".0.0 <"+(+n4+1)+".0.0":ae(i2)?a2=n4==="0"?">="+n4+"."+o3+".0 <"+n4+"."+(+o3+1)+".0":">="+n4+"."+o3+".0 <"+(+n4+1)+".0.0":s3?(r2("replaceCaret pr",s3),s3.charAt(0)!=="-"&&(s3="-"+s3),a2=n4==="0"?o3==="0"?">="+n4+"."+o3+"."+i2+s3+" <"+n4+"."+o3+"."+(+i2+1):">="+n4+"."+o3+"."+i2+s3+" <"+n4+"."+(+o3+1)+".0":">="+n4+"."+o3+"."+i2+s3+" <"+(+n4+1)+".0.0"):(r2("no pr"),a2=n4==="0"?o3==="0"?">="+n4+"."+o3+"."+i2+" <"+n4+"."+o3+"."+(+i2+1):">="+n4+"."+o3+"."+i2+" <"+n4+"."+(+o3+1)+".0":">="+n4+"."+o3+"."+i2+" <"+(+n4+1)+".0.0"),r2("caret return",a2),a2})}(e7,t11)}).join(" ")}(e5,t10),r2("caret",e5),e5=function(e6,t11){return e6.trim().split(/\s+/).map(function(e7){return function(e8,t12){t12&&typeof t12=="object"||(t12={loose:!!t12,includePrerelease:!1});var n3=t12.loose?i[M]:i[C];return e8.replace(n3,function(t13,n4,o3,i2,s3){var a2;return r2("tilde",e8,t13,n4,o3,i2,s3),ae(n4)?a2="":ae(o3)?a2=">="+n4+".0.0 <"+(+n4+1)+".0.0":ae(i2)?a2=">="+n4+"."+o3+".0 <"+n4+"."+(+o3+1)+".0":s3?(r2("replaceTilde pr",s3),s3.charAt(0)!=="-"&&(s3="-"+s3),a2=">="+n4+"."+o3+"."+i2+s3+" <"+n4+"."+(+o3+1)+".0"):a2=">="+n4+"."+o3+"."+i2+" <"+n4+"."+(+o3+1)+".0",r2("tilde return",a2),a2})}(e7,t11)}).join(" ")}(e5,t10),r2("tildes",e5),e5=function(e6,t11){return r2("replaceXRanges",e6,t11),e6.split(/\s+/).map(function(e7){return function(e8,t12){e8=e8.trim(),t12&&typeof t12=="object"||(t12={loose:!!t12,includePrerelease:!1});var n3=t12.loose?i[A]:i[_];return e8.replace(n3,function(t13,n4,o3,i2,s3,a2){r2("xRange",e8,t13,n4,o3,i2,s3,a2);var c2=ae(o3),u2=c2||ae(i2),l2=u2||ae(s3);return n4==="="&&l2&&(n4=""),c2?t13=n4===">"||n4==="<"?"<0.0.0":"*":n4&&l2?(u2&&(i2=0),l2&&(s3=0),n4===">"?(n4=">=",u2?(o3=+o3+1,i2=0,s3=0):l2&&(i2=+i2+1,s3=0)):n4==="<="&&(n4="<",u2?o3=+o3+1:i2=+i2+1),t13=n4+o3+"."+i2+"."+s3):u2?t13=">="+o3+".0.0 <"+(+o3+1)+".0.0":l2&&(t13=">="+o3+"."+i2+".0 <"+o3+"."+(+i2+1)+".0"),r2("xRange return",t13),t13})}(e7,t11)}).join(" ")}(e5,t10),r2("xrange",e5),e5=function(e6,t11){return r2("replaceStars",e6,t11),e6.trim().replace(i[U],"")}(e5,t10),r2("stars",e5),e5}(e4,this.options)},this).join(" ").split(/\s+/);return this.options.loose&&(s2=s2.filter(function(e4){return!!e4.match(o2)})),s2.map(function(e4){return new oe(e4,this.options)},this)},se.prototype.intersects=function(e3,t9){if(!(e3 instanceof se))throw new TypeError("a Range is required");return this.set.some(function(r3){return r3.every(function(r4){return e3.set.some(function(e4){return e4.every(function(e5){return r4.intersects(e5,t9)})})})})},t8.toComparators=function(e3,t9){return new se(e3,t9).set.map(function(e4){return e4.map(function(e5){return e5.value}).join(" ").trim().split(" ")})},se.prototype.test=function(e3){if(!e3)return!1;typeof e3=="string"&&(e3=new Y(e3,this.options));for(var t9=0;t9<this.set.length;t9++)if(ue(this.set[t9],e3,this.options))return!0;return!1},t8.satisfies=le,t8.maxSatisfying=function(e3,t9,r3){var n2=null,o2=null;try{var i2=new se(t9,r3)}catch{return null}return e3.forEach(function(e4){i2.test(e4)&&(n2&&o2.compare(e4)!==-1||(o2=new Y(n2=e4,r3)))}),n2},t8.minSatisfying=function(e3,t9,r3){var n2=null,o2=null;try{var i2=new se(t9,r3)}catch{return null}return e3.forEach(function(e4){i2.test(e4)&&(n2&&o2.compare(e4)!==1||(o2=new Y(n2=e4,r3)))}),n2},t8.validRange=function(e3,t9){try{return new se(e3,t9).range||"*"}catch{return null}},t8.ltr=function(e3,t9,r3){return fe(e3,t9,"<",r3)},t8.gtr=function(e3,t9,r3){return fe(e3,t9,">",r3)},t8.outside=fe,t8.prerelease=function(e3,t9){var r3=q(e3,t9);return r3&&r3.prerelease.length?r3.prerelease:null},t8.intersects=function(e3,t9,r3){return e3=new se(e3,r3),t9=new se(t9,r3),e3.intersects(t9)},t8.coerce=function(e3){if(e3 instanceof Y)return e3;if(typeof e3!="string")return null;var t9=e3.match(i[k]);return t9==null?null:q((t9[1]||"0")+"."+(t9[2]||"0")+"."+(t9[3]||"0"))}},6176:(e2,t8,r2)=>{"use strict";var n=r2(184);e2.exports=function(e3){var t9=e3.match(n);if(!t9)return null;var r3=t9[0].replace(/#! ?/,"").split(" "),o=r3[0].split("/").pop(),i=r3[1];return o==="env"?i:o+(i?" "+i:"")}},184:e2=>{"use strict";e2.exports=/^#!.*/},200:(e2,t8,r2)=>{var n,o=r2(6608),i=r2(6132),s=r2(467);function a(){l&&(l=!1,i.forEach(function(e3){try{process.removeListener(e3,u[e3])}catch{}}),process.emit=d,process.reallyExit=p,n.count-=1)}function c(e3,t9,r3){n.emitted[e3]||(n.emitted[e3]=!0,n.emit(e3,t9,r3))}typeof s!="function"&&(s=s.EventEmitter),process.__signal_exit_emitter__?n=process.__signal_exit_emitter__:((n=process.__signal_exit_emitter__=new s).count=0,n.emitted={}),n.infinite||(n.setMaxListeners(1/0),n.infinite=!0),e2.exports=function(e3,t9){o.equal(typeof e3,"function","a callback must be provided for exit handler"),l===!1&&f();var r3="exit";return t9&&t9.alwaysLast&&(r3="afterexit"),n.on(r3,e3),function(){n.removeListener(r3,e3),n.listeners("exit").length===0&&n.listeners("afterexit").length===0&&a()}},e2.exports.unload=a;var u={};i.forEach(function(e3){u[e3]=function(){process.listeners(e3).length===n.count&&(a(),c("exit",null,e3),c("afterexit",null,e3),process.kill(process.pid,e3))}}),e2.exports.signals=function(){return i},e2.exports.load=f;var l=!1;function f(){l||(l=!0,n.count+=1,i=i.filter(function(e3){try{return process.on(e3,u[e3]),!0}catch{return!1}}),process.emit=m,process.reallyExit=h)}var p=process.reallyExit;function h(e3){process.exitCode=e3||0,c("exit",process.exitCode,null),c("afterexit",process.exitCode,null),p.call(process,process.exitCode)}var d=process.emit;function m(e3,t9){if(e3==="exit"){t9!==void 0&&(process.exitCode=t9);var r3=d.apply(this,arguments);return c("exit",process.exitCode,null),c("afterexit",process.exitCode,null),r3}return d.apply(this,arguments)}},6132:e2=>{e2.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"],process.platform!=="win32"&&e2.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT"),process.platform==="linux"&&e2.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")},9860:e2=>{"use strict";e2.exports=function(e3){var t8=typeof e3=="string"?`
|
|
22
|
+
`:10,r2=typeof e3=="string"?"\r":13;return e3[e3.length-1]===t8&&(e3=e3.slice(0,e3.length-1)),e3[e3.length-1]===r2&&(e3=e3.slice(0,e3.length-1)),e3}},8460:(e2,t8,r2)=>{e2.exports=u,u.sync=function(e3,t9){for(var r3=c(e3,t9=t9||{}),n2=r3.env,i2=r3.ext,u2=r3.extExe,l=[],f=0,p=n2.length;f<p;f++){var h=n2[f];h.charAt(0)==='"'&&h.slice(-1)==='"'&&(h=h.slice(1,-1));var d=o.join(h,e3);!h&&/^\.[\\\/]/.test(e3)&&(d=e3.slice(0,2)+d);for(var m=0,g=i2.length;m<g;m++){var v=d+i2[m];try{if(s.sync(v,{pathExt:u2})){if(!t9.all)return v;l.push(v)}}catch{}}}if(t9.all&&l.length)return l;if(t9.nothrow)return null;throw a(e3)};var n=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",o=r2(7072),i=n?";":":",s=r2(9268);function a(e3){var t9=new Error("not found: "+e3);return t9.code="ENOENT",t9}function c(e3,t9){var r3=t9.colon||i,o2=t9.path||process.env.PATH||"",s2=[""];o2=o2.split(r3);var a2="";return n&&(o2.unshift(process.cwd()),s2=(a2=t9.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM").split(r3),e3.indexOf(".")!==-1&&s2[0]!==""&&s2.unshift("")),(e3.match(/\//)||n&&e3.match(/\\/))&&(o2=[""]),{env:o2,ext:s2,extExe:a2}}function u(e3,t9,r3){typeof t9=="function"&&(r3=t9,t9={});var n2=c(e3,t9),i2=n2.env,u2=n2.ext,l=n2.extExe,f=[];(function n3(c2,p){if(c2===p)return t9.all&&f.length?r3(null,f):r3(a(e3));var h=i2[c2];h.charAt(0)==='"'&&h.slice(-1)==='"'&&(h=h.slice(1,-1));var d=o.join(h,e3);!h&&/^\.[\\\/]/.test(e3)&&(d=e3.slice(0,2)+d),function e4(o2,i3){if(o2===i3)return n3(c2+1,p);var a2=u2[o2];s(d+a2,{pathExt:l},function(n4,s2){if(!n4&&s2){if(!t9.all)return r3(null,d+a2);f.push(d+a2)}return e4(o2+1,i3)})}(0,u2.length)})(0,i2.length)}},6468:(e2,t8,r2)=>{"use strict";let n=r2(8558),o=r2(8636),i=new Map([["10.0","10"],["6.3","8.1"],["6.2","8"],["6.1","7"],["6.0","Vista"],["5.2","Server 2003"],["5.1","XP"],["5.0","2000"],["4.9","ME"],["4.1","98"],["4.0","95"]]);e2.exports=e3=>{let t9=/\d+\.\d/.exec(e3||n.release());if(e3&&!t9)throw new Error("`release` argument doesn't match `n.n`");let r3=(t9||[])[0];if((!e3||e3===n.release())&&["6.1","6.2","6.3","10.0"].includes(r3)){let e4=((o.sync("wmic",["os","get","Caption"]).stdout||"").match(/2008|2012|2016/)||[])[0];if(e4)return`Server ${e4}`}return i.get(r3)}},8636:(e2,t8,r2)=>{"use strict";let n=r2(7072),o=r2(4368),i=r2(7468),s=r2(9860),a=r2(9584),c=r2(1392),u=r2(9068),l=r2(1548),f=r2(200),p=r2(7688),h=r2(6174);function d(e3,t9,r3){let o2;return(r3=Object.assign({extendEnv:!0,env:{}},r3)).extendEnv&&(r3.env=Object.assign({},process.env,r3.env)),r3.__winShell===!0?(delete r3.__winShell,o2={command:e3,args:t9,options:r3,file:e3,original:{cmd:e3,args:t9}}):o2=i._parse(e3,t9,r3),(r3=Object.assign({maxBuffer:1e7,buffer:!0,stripEof:!0,preferLocal:!0,localDir:o2.options.cwd||process.cwd(),encoding:"utf8",reject:!0,cleanup:!0},o2.options)).stdio=h(r3),r3.preferLocal&&(r3.env=a.env(Object.assign({},r3,{cwd:r3.localDir}))),r3.detached&&(r3.cleanup=!1),process.platform==="win32"&&n.basename(o2.command)==="cmd.exe"&&o2.args.unshift("/q"),{cmd:o2.command,args:o2.args,opts:r3,parsed:o2}}function m(e3,t9){return t9&&e3.stripEof&&(t9=s(t9)),t9}function g(e3,t9,r3){let n2="/bin/sh",o2=["-c",t9];return r3=Object.assign({},r3),process.platform==="win32"&&(r3.__winShell=!0,n2=process.env.comspec||"cmd.exe",o2=["/s","/c",`"${t9}"`],r3.windowsVerbatimArguments=!0),r3.shell&&(n2=r3.shell,delete r3.shell),e3(n2,o2,r3)}function v(e3,t9,{encoding:r3,buffer:n2,maxBuffer:o2}){if(!e3[t9])return null;let i2;return i2=n2?r3?u(e3[t9],{encoding:r3,maxBuffer:o2}):u.buffer(e3[t9],{maxBuffer:o2}):new Promise((r4,n3)=>{e3[t9].once("end",r4).once("error",n3)}),i2.catch(e4=>{throw e4.stream=t9,e4.message=`${t9} ${e4.message}`,e4})}function y(e3,t9){let{stdout:r3,stderr:n2}=e3,o2=e3.error,{code:i2,signal:s2}=e3,{parsed:a2,joinedCmd:c2}=t9,u2=t9.timedOut||!1;if(!o2){let e4="";Array.isArray(a2.opts.stdio)?(a2.opts.stdio[2]!=="inherit"&&(e4+=e4.length>0?n2:`
|
|
23
|
+
${n2}`),a2.opts.stdio[1]!=="inherit"&&(e4+=`
|
|
24
|
+
${r3}`)):a2.opts.stdio!=="inherit"&&(e4=`
|
|
25
|
+
${n2}${r3}`),o2=new Error(`Command failed: ${c2}${e4}`),o2.code=i2<0?p(i2):i2}return o2.stdout=r3,o2.stderr=n2,o2.failed=!0,o2.signal=s2||null,o2.cmd=c2,o2.timedOut=u2,o2}function b(e3,t9){let r3=e3;return Array.isArray(t9)&&t9.length>0&&(r3+=" "+t9.join(" ")),r3}e2.exports=(e3,t9,r3)=>{let n2=d(e3,t9,r3),{encoding:s2,buffer:a2,maxBuffer:u2}=n2.opts,p2=b(e3,t9),h2,g2;try{h2=o.spawn(n2.cmd,n2.args,n2.opts)}catch(e4){return Promise.reject(e4)}n2.opts.cleanup&&(g2=f(()=>{h2.kill()}));let w=null,x=!1,S=()=>{w&&(clearTimeout(w),w=null),g2&&g2()};n2.opts.timeout>0&&(w=setTimeout(()=>{w=null,x=!0,h2.kill(n2.opts.killSignal)},n2.opts.timeout));let P=new Promise(e4=>{h2.on("exit",(t10,r4)=>{S(),e4({code:t10,signal:r4})}),h2.on("error",t10=>{S(),e4({error:t10})}),h2.stdin&&h2.stdin.on("error",t10=>{S(),e4({error:t10})})});function O(){h2.stdout&&h2.stdout.destroy(),h2.stderr&&h2.stderr.destroy()}let I=()=>l(Promise.all([P,v(h2,"stdout",{encoding:s2,buffer:a2,maxBuffer:u2}),v(h2,"stderr",{encoding:s2,buffer:a2,maxBuffer:u2})]).then(e4=>{let t10=e4[0];if(t10.stdout=e4[1],t10.stderr=e4[2],t10.error||t10.code!==0||t10.signal!==null){let e5=y(t10,{joinedCmd:p2,parsed:n2,timedOut:x});if(e5.killed=e5.killed||h2.killed,!n2.opts.reject)return e5;throw e5}return{stdout:m(n2.opts,t10.stdout),stderr:m(n2.opts,t10.stderr),code:0,failed:!1,killed:!1,signal:null,cmd:p2,timedOut:!1}}),O);return i._enoent.hookChildProcess(h2,n2.parsed),function(e4,t10){t10!=null&&(c(t10)?t10.pipe(e4.stdin):e4.stdin.end(t10))}(h2,n2.opts.input),h2.then=(e4,t10)=>I().then(e4,t10),h2.catch=e4=>I().catch(e4),h2},e2.exports.stdout=(...t9)=>e2.exports(...t9).then(e3=>e3.stdout),e2.exports.stderr=(...t9)=>e2.exports(...t9).then(e3=>e3.stderr),e2.exports.shell=(t9,r3)=>g(e2.exports,t9,r3),e2.exports.sync=(e3,t9,r3)=>{let n2=d(e3,t9,r3),i2=b(e3,t9);if(c(n2.opts.input))throw new TypeError("The `input` option cannot be a stream in sync mode");let s2=o.spawnSync(n2.cmd,n2.args,n2.opts);if(s2.code=s2.status,s2.error||s2.status!==0||s2.signal!==null){let e4=y(s2,{joinedCmd:i2,parsed:n2});if(!n2.opts.reject)return e4;throw e4}return{stdout:m(n2.opts,s2.stdout),stderr:m(n2.opts,s2.stderr),code:0,failed:!1,signal:null,cmd:i2,timedOut:!1}},e2.exports.shellSync=(t9,r3)=>g(e2.exports.sync,t9,r3)},7688:(e2,t8,r2)=>{"use strict";let n=r2(970),o;if(typeof n.getSystemErrorName=="function")e2.exports=n.getSystemErrorName;else{try{if(o=process.binding("uv"),typeof o.errname!="function")throw new TypeError("uv.errname is not a function")}catch(e3){console.error("execa/lib/errname: unable to establish process.binding('uv')",e3),o=null}e2.exports=e3=>i(o,e3)}function i(e3,t9){if(e3)return e3.errname(t9);if(!(t9<0))throw new Error("err >= 0");return`Unknown system error ${t9}`}e2.exports.__test__=i},6174:e2=>{"use strict";let t8=["stdin","stdout","stderr"];e2.exports=e3=>{if(!e3)return null;if(e3.stdio&&(e4=>t8.some(t9=>!!e4[t9]))(e3))throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${t8.map(e4=>`\`${e4}\``).join(", ")}`);if(typeof e3.stdio=="string")return e3.stdio;let r2=e3.stdio||[];if(!Array.isArray(r2))throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof r2}\``);let n=[],o=Math.max(r2.length,t8.length);for(let i=0;i<o;i++){let o2=null;r2[i]!==void 0?o2=r2[i]:e3[t8[i]]!==void 0&&(o2=e3[t8[i]]),n[i]=o2}return n}},656:(e2,t8,r2)=>{"use strict";let{PassThrough:n}=r2(8378);e2.exports=e3=>{e3=Object.assign({},e3);let{array:t9}=e3,{encoding:r3}=e3,o=r3==="buffer",i=!1;t9?i=!(r3||o):r3=r3||"utf8",o&&(r3=null);let s=0,a=[],c=new n({objectMode:i});return r3&&c.setEncoding(r3),c.on("data",e4=>{a.push(e4),i?s=a.length:s+=e4.length}),c.getBufferedValue=()=>t9?a:o?Buffer.concat(a,s):a.join(""),c.getBufferedLength=()=>s,c}},9068:(e2,t8,r2)=>{"use strict";let n=r2(8984),o=r2(656);class i extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}}function s(e3,t9){if(!e3)return Promise.reject(new Error("Expected a stream"));t9=Object.assign({maxBuffer:1/0},t9);let{maxBuffer:r3}=t9,s2;return new Promise((a,c)=>{let u=e4=>{e4&&(e4.bufferedData=s2.getBufferedValue()),c(e4)};s2=n(e3,o(t9),e4=>{e4?u(e4):a()}),s2.on("data",()=>{s2.getBufferedLength()>r3&&u(new i)})}).then(()=>s2.getBufferedValue())}e2.exports=s,e2.exports.buffer=(e3,t9)=>s(e3,Object.assign({},t9,{encoding:"buffer"})),e2.exports.array=(e3,t9)=>s(e3,Object.assign({},t9,{array:!0})),e2.exports.MaxBufferError=i},2680:e2=>{e2.exports=function e3(t8,r2){if(t8&&r2)return e3(t8)(r2);if(typeof t8!="function")throw new TypeError("need wrapper function");return Object.keys(t8).forEach(function(e4){n[e4]=t8[e4]}),n;function n(){for(var e4=new Array(arguments.length),r3=0;r3<e4.length;r3++)e4[r3]=arguments[r3];var n2=t8.apply(this,e4),o=e4[e4.length-1];return typeof n2=="function"&&n2!==o&&Object.keys(o).forEach(function(e5){n2[e5]=o[e5]}),n2}}},4824:e2=>{"use strict";function t8(e3){return e3}e2.exports={date:t8,error:t8,symbol:t8,string:t8,number:t8,boolean:t8,null:t8,undefined:t8}},324:(e2,t8,r2)=>{"use strict";var n=r2(3648),o=r2(4616),i=r2(4824);function s(e3,t9){return e3===void 0?t9:e3}e2.exports=function(){var e3=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return{indent:s(e3.indent," "),prefix:s(e3.prefix,`
|
|
26
|
+
`),postfix:s(e3.postfix,""),errorToString:e3.errorToString||n,dateToString:e3.dateToString||o,colors:Object.assign({},i,e3.colors)}}},4616:e2=>{"use strict";e2.exports=function(e3){return`new Date(${Date.prototype.toISOString.call(e3)})`}},3648:e2=>{"use strict";e2.exports=function(e3){return Error.prototype.toString.call(e3)}},9411:e2=>{"use strict";e2.exports=function(){for(var e3=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1,t8=arguments.length>1&&arguments[1]!==void 0?arguments[1]:" ",r2="",n=0;n<e3;n+=1)r2+=t8;return r2}},6232:(e2,t8,r2)=>{"use strict";var n=r2(7344),o=r2(324),i=r2(9411),s=["object","array"];e2.exports=function(e3,t9){var r3=o(t9),a=r3.colors,c=r3.prefix,u=r3.postfix,l=r3.dateToString,f=r3.errorToString,p=r3.indent,h=new Map;function d(e4){var t10=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1,r4=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;if(Object.keys(e4).length===0)return" {}";var o2=`
|
|
27
|
+
`,a2=i(t10,p);return Object.keys(e4).forEach(function(c2){var u2=e4[c2],l2=n(u2),f2=i(r4," "),p2=s.indexOf(l2)!==-1?"":" ",h2=v(u2)?" [Circular]":g(l2,u2,t10+1,r4);o2+=`${f2}${a2}${c2}:${p2}${h2}
|
|
28
|
+
`}),o2.substring(0,o2.length-1)}function m(e4){var t10=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1,r4=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;if(e4.length===0)return" []";var o2=`
|
|
29
|
+
`,s2=i(t10,p);return e4.forEach(function(e5){var a2=n(e5),c2=i(r4," "),u2=v(e5)?"[Circular]":g(a2,e5,t10,r4+1).toString().trimLeft();o2+=`${c2}${s2}- ${u2}
|
|
30
|
+
`}),o2.substring(0,o2.length-1)}function g(e4,t10,r4,n2){switch(e4){case"array":return m(t10,r4,n2);case"object":return d(t10,r4,n2);case"string":return a.string(t10);case"symbol":return a.symbol(t10.toString());case"number":return a.number(t10);case"boolean":return a.boolean(t10);case"null":return a.null("null");case"undefined":return a.undefined("undefined");case"date":return a.date(l(t10));case"error":return a.error(f(t10));default:return t10&&t10.toString?t10.toString():Object.prototype.toString.call(t10)}}function v(e4){return!(["object","array"].indexOf(n(e4))===-1||!h.has(e4)&&(h.set(e4),1))}var y="";return h.set(e3),n(e3)==="object"&&Object.keys(e3).length>0?y=d(e3):n(e3)==="array"&&e3.length>0&&(y=m(e3)),y.length===0?"":`${c}${y.slice(1)}${u}`}},7344:e2=>{"use strict";e2.exports=function(e3){return Array.isArray(e3)?"array":e3 instanceof Date?"date":e3 instanceof Error?"error":e3===null?"null":typeof e3=="object"&&Object.prototype.toString.call(e3)==="[object Object]"?"object":typeof e3}},6608:e2=>{"use strict";e2.exports=require("assert")},4368:e2=>{"use strict";e2.exports=require("child_process")},467:e2=>{"use strict";e2.exports=require("events")},2058:e2=>{"use strict";e2.exports=require("fs")},8558:e2=>{"use strict";e2.exports=require("os")},7072:e2=>{"use strict";e2.exports=require("path")},8378:e2=>{"use strict";e2.exports=require("stream")},970:e2=>{"use strict";e2.exports=require("util")}},t7={},r=function r2(n){var o=t7[n];if(o!==void 0)return o.exports;var i=t7[n]={exports:{}};return e[n](i,i.exports,r2),i.exports}(2980);module2.exports=r})()}});var require_picocolors=__commonJS({"../../node_modules/picocolors/picocolors.js"(exports2,module2){"use strict";var p=process||{},argv=p.argv||[],env=p.env||{},isColorSupported=!(env.NO_COLOR||argv.includes("--no-color"))&&(!!env.FORCE_COLOR||argv.includes("--color")||p.platform==="win32"||(p.stdout||{}).isTTY&&env.TERM!=="dumb"||!!env.CI),formatter=(open,close,replace=open)=>input=>{let string=""+input,index=string.indexOf(close,open.length);return~index?open+replaceClose(string,close,replace,index)+close:open+string+close},replaceClose=(string,close,replace,index)=>{let result="",cursor=0;do result+=string.substring(cursor,index)+replace,cursor=index+close.length,index=string.indexOf(close,cursor);while(~index);return result+string.substring(cursor)},createColors=(enabled=isColorSupported)=>{let f=enabled?formatter:()=>String;return{isColorSupported:enabled,reset:f("\x1B[0m","\x1B[0m"),bold:f("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:f("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:f("\x1B[3m","\x1B[23m"),underline:f("\x1B[4m","\x1B[24m"),inverse:f("\x1B[7m","\x1B[27m"),hidden:f("\x1B[8m","\x1B[28m"),strikethrough:f("\x1B[9m","\x1B[29m"),black:f("\x1B[30m","\x1B[39m"),red:f("\x1B[31m","\x1B[39m"),green:f("\x1B[32m","\x1B[39m"),yellow:f("\x1B[33m","\x1B[39m"),blue:f("\x1B[34m","\x1B[39m"),magenta:f("\x1B[35m","\x1B[39m"),cyan:f("\x1B[36m","\x1B[39m"),white:f("\x1B[37m","\x1B[39m"),gray:f("\x1B[90m","\x1B[39m"),bgBlack:f("\x1B[40m","\x1B[49m"),bgRed:f("\x1B[41m","\x1B[49m"),bgGreen:f("\x1B[42m","\x1B[49m"),bgYellow:f("\x1B[43m","\x1B[49m"),bgBlue:f("\x1B[44m","\x1B[49m"),bgMagenta:f("\x1B[45m","\x1B[49m"),bgCyan:f("\x1B[46m","\x1B[49m"),bgWhite:f("\x1B[47m","\x1B[49m"),blackBright:f("\x1B[90m","\x1B[39m"),redBright:f("\x1B[91m","\x1B[39m"),greenBright:f("\x1B[92m","\x1B[39m"),yellowBright:f("\x1B[93m","\x1B[39m"),blueBright:f("\x1B[94m","\x1B[39m"),magentaBright:f("\x1B[95m","\x1B[39m"),cyanBright:f("\x1B[96m","\x1B[39m"),whiteBright:f("\x1B[97m","\x1B[39m"),bgBlackBright:f("\x1B[100m","\x1B[49m"),bgRedBright:f("\x1B[101m","\x1B[49m"),bgGreenBright:f("\x1B[102m","\x1B[49m"),bgYellowBright:f("\x1B[103m","\x1B[49m"),bgBlueBright:f("\x1B[104m","\x1B[49m"),bgMagentaBright:f("\x1B[105m","\x1B[49m"),bgCyanBright:f("\x1B[106m","\x1B[49m"),bgWhiteBright:f("\x1B[107m","\x1B[49m")}};module2.exports=createColors();module2.exports.createColors=createColors}});var require_constants=__commonJS({"../../node_modules/semver/internal/constants.js"(exports2,module2){"use strict";var SEMVER_SPEC_VERSION="2.0.0",MAX_SAFE_INTEGER=Number.MAX_SAFE_INTEGER||9007199254740991,MAX_SAFE_COMPONENT_LENGTH=16,MAX_SAFE_BUILD_LENGTH=250,RELEASE_TYPES=["major","premajor","minor","preminor","patch","prepatch","prerelease"];module2.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH,MAX_SAFE_BUILD_LENGTH,MAX_SAFE_INTEGER,RELEASE_TYPES,SEMVER_SPEC_VERSION,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}}});var require_debug=__commonJS({"../../node_modules/semver/internal/debug.js"(exports2,module2){"use strict";var debug=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...args)=>console.error("SEMVER",...args):()=>{};module2.exports=debug}});var require_re=__commonJS({"../../node_modules/semver/internal/re.js"(exports2,module2){"use strict";var{MAX_SAFE_COMPONENT_LENGTH,MAX_SAFE_BUILD_LENGTH,MAX_LENGTH}=require_constants(),debug=require_debug();exports2=module2.exports={};var re=exports2.re=[],safeRe=exports2.safeRe=[],src=exports2.src=[],safeSrc=exports2.safeSrc=[],t7=exports2.t={},R=0,LETTERDASHNUMBER="[a-zA-Z0-9-]",safeRegexReplacements=[["\\s",1],["\\d",MAX_LENGTH],[LETTERDASHNUMBER,MAX_SAFE_BUILD_LENGTH]],makeSafeRegex=value=>{for(let[token,max]of safeRegexReplacements)value=value.split(`${token}*`).join(`${token}{0,${max}}`).split(`${token}+`).join(`${token}{1,${max}}`);return value},createToken=(name,value,isGlobal)=>{let safe=makeSafeRegex(value),index=R++;debug(name,index,value),t7[name]=index,src[index]=value,safeSrc[index]=safe,re[index]=new RegExp(value,isGlobal?"g":void 0),safeRe[index]=new RegExp(safe,isGlobal?"g":void 0)};createToken("NUMERICIDENTIFIER","0|[1-9]\\d*");createToken("NUMERICIDENTIFIERLOOSE","\\d+");createToken("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`);createToken("MAINVERSION",`(${src[t7.NUMERICIDENTIFIER]})\\.(${src[t7.NUMERICIDENTIFIER]})\\.(${src[t7.NUMERICIDENTIFIER]})`);createToken("MAINVERSIONLOOSE",`(${src[t7.NUMERICIDENTIFIERLOOSE]})\\.(${src[t7.NUMERICIDENTIFIERLOOSE]})\\.(${src[t7.NUMERICIDENTIFIERLOOSE]})`);createToken("PRERELEASEIDENTIFIER",`(?:${src[t7.NONNUMERICIDENTIFIER]}|${src[t7.NUMERICIDENTIFIER]})`);createToken("PRERELEASEIDENTIFIERLOOSE",`(?:${src[t7.NONNUMERICIDENTIFIER]}|${src[t7.NUMERICIDENTIFIERLOOSE]})`);createToken("PRERELEASE",`(?:-(${src[t7.PRERELEASEIDENTIFIER]}(?:\\.${src[t7.PRERELEASEIDENTIFIER]})*))`);createToken("PRERELEASELOOSE",`(?:-?(${src[t7.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${src[t7.PRERELEASEIDENTIFIERLOOSE]})*))`);createToken("BUILDIDENTIFIER",`${LETTERDASHNUMBER}+`);createToken("BUILD",`(?:\\+(${src[t7.BUILDIDENTIFIER]}(?:\\.${src[t7.BUILDIDENTIFIER]})*))`);createToken("FULLPLAIN",`v?${src[t7.MAINVERSION]}${src[t7.PRERELEASE]}?${src[t7.BUILD]}?`);createToken("FULL",`^${src[t7.FULLPLAIN]}$`);createToken("LOOSEPLAIN",`[v=\\s]*${src[t7.MAINVERSIONLOOSE]}${src[t7.PRERELEASELOOSE]}?${src[t7.BUILD]}?`);createToken("LOOSE",`^${src[t7.LOOSEPLAIN]}$`);createToken("GTLT","((?:<|>)?=?)");createToken("XRANGEIDENTIFIERLOOSE",`${src[t7.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);createToken("XRANGEIDENTIFIER",`${src[t7.NUMERICIDENTIFIER]}|x|X|\\*`);createToken("XRANGEPLAIN",`[v=\\s]*(${src[t7.XRANGEIDENTIFIER]})(?:\\.(${src[t7.XRANGEIDENTIFIER]})(?:\\.(${src[t7.XRANGEIDENTIFIER]})(?:${src[t7.PRERELEASE]})?${src[t7.BUILD]}?)?)?`);createToken("XRANGEPLAINLOOSE",`[v=\\s]*(${src[t7.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t7.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t7.XRANGEIDENTIFIERLOOSE]})(?:${src[t7.PRERELEASELOOSE]})?${src[t7.BUILD]}?)?)?`);createToken("XRANGE",`^${src[t7.GTLT]}\\s*${src[t7.XRANGEPLAIN]}$`);createToken("XRANGELOOSE",`^${src[t7.GTLT]}\\s*${src[t7.XRANGEPLAINLOOSE]}$`);createToken("COERCEPLAIN",`(^|[^\\d])(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`);createToken("COERCE",`${src[t7.COERCEPLAIN]}(?:$|[^\\d])`);createToken("COERCEFULL",src[t7.COERCEPLAIN]+`(?:${src[t7.PRERELEASE]})?(?:${src[t7.BUILD]})?(?:$|[^\\d])`);createToken("COERCERTL",src[t7.COERCE],!0);createToken("COERCERTLFULL",src[t7.COERCEFULL],!0);createToken("LONETILDE","(?:~>?)");createToken("TILDETRIM",`(\\s*)${src[t7.LONETILDE]}\\s+`,!0);exports2.tildeTrimReplace="$1~";createToken("TILDE",`^${src[t7.LONETILDE]}${src[t7.XRANGEPLAIN]}$`);createToken("TILDELOOSE",`^${src[t7.LONETILDE]}${src[t7.XRANGEPLAINLOOSE]}$`);createToken("LONECARET","(?:\\^)");createToken("CARETTRIM",`(\\s*)${src[t7.LONECARET]}\\s+`,!0);exports2.caretTrimReplace="$1^";createToken("CARET",`^${src[t7.LONECARET]}${src[t7.XRANGEPLAIN]}$`);createToken("CARETLOOSE",`^${src[t7.LONECARET]}${src[t7.XRANGEPLAINLOOSE]}$`);createToken("COMPARATORLOOSE",`^${src[t7.GTLT]}\\s*(${src[t7.LOOSEPLAIN]})$|^$`);createToken("COMPARATOR",`^${src[t7.GTLT]}\\s*(${src[t7.FULLPLAIN]})$|^$`);createToken("COMPARATORTRIM",`(\\s*)${src[t7.GTLT]}\\s*(${src[t7.LOOSEPLAIN]}|${src[t7.XRANGEPLAIN]})`,!0);exports2.comparatorTrimReplace="$1$2$3";createToken("HYPHENRANGE",`^\\s*(${src[t7.XRANGEPLAIN]})\\s+-\\s+(${src[t7.XRANGEPLAIN]})\\s*$`);createToken("HYPHENRANGELOOSE",`^\\s*(${src[t7.XRANGEPLAINLOOSE]})\\s+-\\s+(${src[t7.XRANGEPLAINLOOSE]})\\s*$`);createToken("STAR","(<|>)?=?\\s*\\*");createToken("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");createToken("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")}});var require_parse_options=__commonJS({"../../node_modules/semver/internal/parse-options.js"(exports2,module2){"use strict";var looseOption=Object.freeze({loose:!0}),emptyOpts=Object.freeze({}),parseOptions=options=>options?typeof options!="object"?looseOption:options:emptyOpts;module2.exports=parseOptions}});var require_identifiers=__commonJS({"../../node_modules/semver/internal/identifiers.js"(exports2,module2){"use strict";var numeric=/^[0-9]+$/,compareIdentifiers=(a,b)=>{let anum=numeric.test(a),bnum=numeric.test(b);return anum&&bnum&&(a=+a,b=+b),a===b?0:anum&&!bnum?-1:bnum&&!anum?1:a<b?-1:1},rcompareIdentifiers=(a,b)=>compareIdentifiers(b,a);module2.exports={compareIdentifiers,rcompareIdentifiers}}});var require_semver=__commonJS({"../../node_modules/semver/classes/semver.js"(exports2,module2){"use strict";var debug=require_debug(),{MAX_LENGTH,MAX_SAFE_INTEGER}=require_constants(),{safeRe:re,t:t7}=require_re(),parseOptions=require_parse_options(),{compareIdentifiers}=require_identifiers(),SemVer2=class _SemVer{constructor(version2,options){if(options=parseOptions(options),version2 instanceof _SemVer){if(version2.loose===!!options.loose&&version2.includePrerelease===!!options.includePrerelease)return version2;version2=version2.version}else if(typeof version2!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof version2}".`);if(version2.length>MAX_LENGTH)throw new TypeError(`version is longer than ${MAX_LENGTH} characters`);debug("SemVer",version2,options),this.options=options,this.loose=!!options.loose,this.includePrerelease=!!options.includePrerelease;let m=version2.trim().match(options.loose?re[t7.LOOSE]:re[t7.FULL]);if(!m)throw new TypeError(`Invalid Version: ${version2}`);if(this.raw=version2,this.major=+m[1],this.minor=+m[2],this.patch=+m[3],this.major>MAX_SAFE_INTEGER||this.major<0)throw new TypeError("Invalid major version");if(this.minor>MAX_SAFE_INTEGER||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>MAX_SAFE_INTEGER||this.patch<0)throw new TypeError("Invalid patch version");m[4]?this.prerelease=m[4].split(".").map(id=>{if(/^[0-9]+$/.test(id)){let num=+id;if(num>=0&&num<MAX_SAFE_INTEGER)return num}return id}):this.prerelease=[],this.build=m[5]?m[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(other){if(debug("SemVer.compare",this.version,this.options,other),!(other instanceof _SemVer)){if(typeof other=="string"&&other===this.version)return 0;other=new _SemVer(other,this.options)}return other.version===this.version?0:this.compareMain(other)||this.comparePre(other)}compareMain(other){return other instanceof _SemVer||(other=new _SemVer(other,this.options)),compareIdentifiers(this.major,other.major)||compareIdentifiers(this.minor,other.minor)||compareIdentifiers(this.patch,other.patch)}comparePre(other){if(other instanceof _SemVer||(other=new _SemVer(other,this.options)),this.prerelease.length&&!other.prerelease.length)return-1;if(!this.prerelease.length&&other.prerelease.length)return 1;if(!this.prerelease.length&&!other.prerelease.length)return 0;let i=0;do{let a=this.prerelease[i],b=other.prerelease[i];if(debug("prerelease compare",i,a,b),a===void 0&&b===void 0)return 0;if(b===void 0)return 1;if(a===void 0)return-1;if(a===b)continue;return compareIdentifiers(a,b)}while(++i)}compareBuild(other){other instanceof _SemVer||(other=new _SemVer(other,this.options));let i=0;do{let a=this.build[i],b=other.build[i];if(debug("build compare",i,a,b),a===void 0&&b===void 0)return 0;if(b===void 0)return 1;if(a===void 0)return-1;if(a===b)continue;return compareIdentifiers(a,b)}while(++i)}inc(release,identifier,identifierBase){if(release.startsWith("pre")){if(!identifier&&identifierBase===!1)throw new Error("invalid increment argument: identifier is empty");if(identifier){let match=`-${identifier}`.match(this.options.loose?re[t7.PRERELEASELOOSE]:re[t7.PRERELEASE]);if(!match||match[1]!==identifier)throw new Error(`invalid identifier: ${identifier}`)}}switch(release){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",identifier,identifierBase);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",identifier,identifierBase);break;case"prepatch":this.prerelease.length=0,this.inc("patch",identifier,identifierBase),this.inc("pre",identifier,identifierBase);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",identifier,identifierBase),this.inc("pre",identifier,identifierBase);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let base=Number(identifierBase)?1:0;if(this.prerelease.length===0)this.prerelease=[base];else{let i=this.prerelease.length;for(;--i>=0;)typeof this.prerelease[i]=="number"&&(this.prerelease[i]++,i=-2);if(i===-1){if(identifier===this.prerelease.join(".")&&identifierBase===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(base)}}if(identifier){let prerelease3=[identifier,base];identifierBase===!1&&(prerelease3=[identifier]),compareIdentifiers(this.prerelease[0],identifier)===0?isNaN(this.prerelease[1])&&(this.prerelease=prerelease3):this.prerelease=prerelease3}break}default:throw new Error(`invalid increment argument: ${release}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};module2.exports=SemVer2}});var require_parse=__commonJS({"../../node_modules/semver/functions/parse.js"(exports2,module2){"use strict";var SemVer2=require_semver(),parse2=(version2,options,throwErrors=!1)=>{if(version2 instanceof SemVer2)return version2;try{return new SemVer2(version2,options)}catch(er){if(!throwErrors)return null;throw er}};module2.exports=parse2}});var require_valid=__commonJS({"../../node_modules/semver/functions/valid.js"(exports2,module2){"use strict";var parse2=require_parse(),valid=(version2,options)=>{let v=parse2(version2,options);return v?v.version:null};module2.exports=valid}});var require_clean=__commonJS({"../../node_modules/semver/functions/clean.js"(exports2,module2){"use strict";var parse2=require_parse(),clean2=(version2,options)=>{let s=parse2(version2.trim().replace(/^[=v]+/,""),options);return s?s.version:null};module2.exports=clean2}});var require_inc=__commonJS({"../../node_modules/semver/functions/inc.js"(exports2,module2){"use strict";var SemVer2=require_semver(),inc=(version2,release,options,identifier,identifierBase)=>{typeof options=="string"&&(identifierBase=identifier,identifier=options,options=void 0);try{return new SemVer2(version2 instanceof SemVer2?version2.version:version2,options).inc(release,identifier,identifierBase).version}catch{return null}};module2.exports=inc}});var require_diff=__commonJS({"../../node_modules/semver/functions/diff.js"(exports2,module2){"use strict";var parse2=require_parse(),diff=(version1,version2)=>{let v1=parse2(version1,null,!0),v2=parse2(version2,null,!0),comparison=v1.compare(v2);if(comparison===0)return null;let v1Higher=comparison>0,highVersion=v1Higher?v1:v2,lowVersion=v1Higher?v2:v1,highHasPre=!!highVersion.prerelease.length;if(!!lowVersion.prerelease.length&&!highHasPre){if(!lowVersion.patch&&!lowVersion.minor)return"major";if(lowVersion.compareMain(highVersion)===0)return lowVersion.minor&&!lowVersion.patch?"minor":"patch"}let prefix2=highHasPre?"pre":"";return v1.major!==v2.major?prefix2+"major":v1.minor!==v2.minor?prefix2+"minor":v1.patch!==v2.patch?prefix2+"patch":"prerelease"};module2.exports=diff}});var require_major=__commonJS({"../../node_modules/semver/functions/major.js"(exports2,module2){"use strict";var SemVer2=require_semver(),major2=(a,loose)=>new SemVer2(a,loose).major;module2.exports=major2}});var require_minor=__commonJS({"../../node_modules/semver/functions/minor.js"(exports2,module2){"use strict";var SemVer2=require_semver(),minor=(a,loose)=>new SemVer2(a,loose).minor;module2.exports=minor}});var require_patch=__commonJS({"../../node_modules/semver/functions/patch.js"(exports2,module2){"use strict";var SemVer2=require_semver(),patch=(a,loose)=>new SemVer2(a,loose).patch;module2.exports=patch}});var require_prerelease=__commonJS({"../../node_modules/semver/functions/prerelease.js"(exports2,module2){"use strict";var parse2=require_parse(),prerelease3=(version2,options)=>{let parsed=parse2(version2,options);return parsed&&parsed.prerelease.length?parsed.prerelease:null};module2.exports=prerelease3}});var require_compare=__commonJS({"../../node_modules/semver/functions/compare.js"(exports2,module2){"use strict";var SemVer2=require_semver(),compare=(a,b,loose)=>new SemVer2(a,loose).compare(new SemVer2(b,loose));module2.exports=compare}});var require_rcompare=__commonJS({"../../node_modules/semver/functions/rcompare.js"(exports2,module2){"use strict";var compare=require_compare(),rcompare=(a,b,loose)=>compare(b,a,loose);module2.exports=rcompare}});var require_compare_loose=__commonJS({"../../node_modules/semver/functions/compare-loose.js"(exports2,module2){"use strict";var compare=require_compare(),compareLoose=(a,b)=>compare(a,b,!0);module2.exports=compareLoose}});var require_compare_build=__commonJS({"../../node_modules/semver/functions/compare-build.js"(exports2,module2){"use strict";var SemVer2=require_semver(),compareBuild=(a,b,loose)=>{let versionA=new SemVer2(a,loose),versionB=new SemVer2(b,loose);return versionA.compare(versionB)||versionA.compareBuild(versionB)};module2.exports=compareBuild}});var require_sort=__commonJS({"../../node_modules/semver/functions/sort.js"(exports2,module2){"use strict";var compareBuild=require_compare_build(),sort=(list,loose)=>list.sort((a,b)=>compareBuild(a,b,loose));module2.exports=sort}});var require_rsort=__commonJS({"../../node_modules/semver/functions/rsort.js"(exports2,module2){"use strict";var compareBuild=require_compare_build(),rsort=(list,loose)=>list.sort((a,b)=>compareBuild(b,a,loose));module2.exports=rsort}});var require_gt=__commonJS({"../../node_modules/semver/functions/gt.js"(exports2,module2){"use strict";var compare=require_compare(),gt3=(a,b,loose)=>compare(a,b,loose)>0;module2.exports=gt3}});var require_lt=__commonJS({"../../node_modules/semver/functions/lt.js"(exports2,module2){"use strict";var compare=require_compare(),lt6=(a,b,loose)=>compare(a,b,loose)<0;module2.exports=lt6}});var require_eq=__commonJS({"../../node_modules/semver/functions/eq.js"(exports2,module2){"use strict";var compare=require_compare(),eq=(a,b,loose)=>compare(a,b,loose)===0;module2.exports=eq}});var require_neq=__commonJS({"../../node_modules/semver/functions/neq.js"(exports2,module2){"use strict";var compare=require_compare(),neq=(a,b,loose)=>compare(a,b,loose)!==0;module2.exports=neq}});var require_gte=__commonJS({"../../node_modules/semver/functions/gte.js"(exports2,module2){"use strict";var compare=require_compare(),gte=(a,b,loose)=>compare(a,b,loose)>=0;module2.exports=gte}});var require_lte=__commonJS({"../../node_modules/semver/functions/lte.js"(exports2,module2){"use strict";var compare=require_compare(),lte=(a,b,loose)=>compare(a,b,loose)<=0;module2.exports=lte}});var require_cmp=__commonJS({"../../node_modules/semver/functions/cmp.js"(exports2,module2){"use strict";var eq=require_eq(),neq=require_neq(),gt3=require_gt(),gte=require_gte(),lt6=require_lt(),lte=require_lte(),cmp=(a,op,b,loose)=>{switch(op){case"===":return typeof a=="object"&&(a=a.version),typeof b=="object"&&(b=b.version),a===b;case"!==":return typeof a=="object"&&(a=a.version),typeof b=="object"&&(b=b.version),a!==b;case"":case"=":case"==":return eq(a,b,loose);case"!=":return neq(a,b,loose);case">":return gt3(a,b,loose);case">=":return gte(a,b,loose);case"<":return lt6(a,b,loose);case"<=":return lte(a,b,loose);default:throw new TypeError(`Invalid operator: ${op}`)}};module2.exports=cmp}});var require_coerce=__commonJS({"../../node_modules/semver/functions/coerce.js"(exports2,module2){"use strict";var SemVer2=require_semver(),parse2=require_parse(),{safeRe:re,t:t7}=require_re(),coerce2=(version2,options)=>{if(version2 instanceof SemVer2)return version2;if(typeof version2=="number"&&(version2=String(version2)),typeof version2!="string")return null;options=options||{};let match=null;if(!options.rtl)match=version2.match(options.includePrerelease?re[t7.COERCEFULL]:re[t7.COERCE]);else{let coerceRtlRegex=options.includePrerelease?re[t7.COERCERTLFULL]:re[t7.COERCERTL],next;for(;(next=coerceRtlRegex.exec(version2))&&(!match||match.index+match[0].length!==version2.length);)(!match||next.index+next[0].length!==match.index+match[0].length)&&(match=next),coerceRtlRegex.lastIndex=next.index+next[1].length+next[2].length;coerceRtlRegex.lastIndex=-1}if(match===null)return null;let major2=match[2],minor=match[3]||"0",patch=match[4]||"0",prerelease3=options.includePrerelease&&match[5]?`-${match[5]}`:"",build=options.includePrerelease&&match[6]?`+${match[6]}`:"";return parse2(`${major2}.${minor}.${patch}${prerelease3}${build}`,options)};module2.exports=coerce2}});var require_lrucache=__commonJS({"../../node_modules/semver/internal/lrucache.js"(exports2,module2){"use strict";var LRUCache=class{constructor(){this.max=1e3,this.map=new Map}get(key){let value=this.map.get(key);if(value!==void 0)return this.map.delete(key),this.map.set(key,value),value}delete(key){return this.map.delete(key)}set(key,value){if(!this.delete(key)&&value!==void 0){if(this.map.size>=this.max){let firstKey=this.map.keys().next().value;this.delete(firstKey)}this.map.set(key,value)}return this}};module2.exports=LRUCache}});var require_range=__commonJS({"../../node_modules/semver/classes/range.js"(exports2,module2){"use strict";var SPACE_CHARACTERS=/\s+/g,Range=class _Range{constructor(range,options){if(options=parseOptions(options),range instanceof _Range)return range.loose===!!options.loose&&range.includePrerelease===!!options.includePrerelease?range:new _Range(range.raw,options);if(range instanceof Comparator)return this.raw=range.value,this.set=[[range]],this.formatted=void 0,this;if(this.options=options,this.loose=!!options.loose,this.includePrerelease=!!options.includePrerelease,this.raw=range.trim().replace(SPACE_CHARACTERS," "),this.set=this.raw.split("||").map(r=>this.parseRange(r.trim())).filter(c=>c.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let first=this.set[0];if(this.set=this.set.filter(c=>!isNullSet(c[0])),this.set.length===0)this.set=[first];else if(this.set.length>1){for(let c of this.set)if(c.length===1&&isAny(c[0])){this.set=[c];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let i=0;i<this.set.length;i++){i>0&&(this.formatted+="||");let comps=this.set[i];for(let k=0;k<comps.length;k++)k>0&&(this.formatted+=" "),this.formatted+=comps[k].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(range){let memoKey=((this.options.includePrerelease&&FLAG_INCLUDE_PRERELEASE)|(this.options.loose&&FLAG_LOOSE))+":"+range,cached=cache.get(memoKey);if(cached)return cached;let loose=this.options.loose,hr=loose?re[t7.HYPHENRANGELOOSE]:re[t7.HYPHENRANGE];range=range.replace(hr,hyphenReplace(this.options.includePrerelease)),debug("hyphen replace",range),range=range.replace(re[t7.COMPARATORTRIM],comparatorTrimReplace),debug("comparator trim",range),range=range.replace(re[t7.TILDETRIM],tildeTrimReplace),debug("tilde trim",range),range=range.replace(re[t7.CARETTRIM],caretTrimReplace),debug("caret trim",range);let rangeList=range.split(" ").map(comp=>parseComparator(comp,this.options)).join(" ").split(/\s+/).map(comp=>replaceGTE0(comp,this.options));loose&&(rangeList=rangeList.filter(comp=>(debug("loose invalid filter",comp,this.options),!!comp.match(re[t7.COMPARATORLOOSE])))),debug("range list",rangeList);let rangeMap=new Map,comparators=rangeList.map(comp=>new Comparator(comp,this.options));for(let comp of comparators){if(isNullSet(comp))return[comp];rangeMap.set(comp.value,comp)}rangeMap.size>1&&rangeMap.has("")&&rangeMap.delete("");let result=[...rangeMap.values()];return cache.set(memoKey,result),result}intersects(range,options){if(!(range instanceof _Range))throw new TypeError("a Range is required");return this.set.some(thisComparators=>isSatisfiable(thisComparators,options)&&range.set.some(rangeComparators=>isSatisfiable(rangeComparators,options)&&thisComparators.every(thisComparator=>rangeComparators.every(rangeComparator=>thisComparator.intersects(rangeComparator,options)))))}test(version2){if(!version2)return!1;if(typeof version2=="string")try{version2=new SemVer2(version2,this.options)}catch{return!1}for(let i=0;i<this.set.length;i++)if(testSet(this.set[i],version2,this.options))return!0;return!1}};module2.exports=Range;var LRU=require_lrucache(),cache=new LRU,parseOptions=require_parse_options(),Comparator=require_comparator(),debug=require_debug(),SemVer2=require_semver(),{safeRe:re,t:t7,comparatorTrimReplace,tildeTrimReplace,caretTrimReplace}=require_re(),{FLAG_INCLUDE_PRERELEASE,FLAG_LOOSE}=require_constants(),isNullSet=c=>c.value==="<0.0.0-0",isAny=c=>c.value==="",isSatisfiable=(comparators,options)=>{let result=!0,remainingComparators=comparators.slice(),testComparator=remainingComparators.pop();for(;result&&remainingComparators.length;)result=remainingComparators.every(otherComparator=>testComparator.intersects(otherComparator,options)),testComparator=remainingComparators.pop();return result},parseComparator=(comp,options)=>(debug("comp",comp,options),comp=replaceCarets(comp,options),debug("caret",comp),comp=replaceTildes(comp,options),debug("tildes",comp),comp=replaceXRanges(comp,options),debug("xrange",comp),comp=replaceStars(comp,options),debug("stars",comp),comp),isX=id=>!id||id.toLowerCase()==="x"||id==="*",replaceTildes=(comp,options)=>comp.trim().split(/\s+/).map(c=>replaceTilde(c,options)).join(" "),replaceTilde=(comp,options)=>{let r=options.loose?re[t7.TILDELOOSE]:re[t7.TILDE];return comp.replace(r,(_,M,m,p,pr)=>{debug("tilde",comp,_,M,m,p,pr);let ret;return isX(M)?ret="":isX(m)?ret=`>=${M}.0.0 <${+M+1}.0.0-0`:isX(p)?ret=`>=${M}.${m}.0 <${M}.${+m+1}.0-0`:pr?(debug("replaceTilde pr",pr),ret=`>=${M}.${m}.${p}-${pr} <${M}.${+m+1}.0-0`):ret=`>=${M}.${m}.${p} <${M}.${+m+1}.0-0`,debug("tilde return",ret),ret})},replaceCarets=(comp,options)=>comp.trim().split(/\s+/).map(c=>replaceCaret(c,options)).join(" "),replaceCaret=(comp,options)=>{debug("caret",comp,options);let r=options.loose?re[t7.CARETLOOSE]:re[t7.CARET],z=options.includePrerelease?"-0":"";return comp.replace(r,(_,M,m,p,pr)=>{debug("caret",comp,_,M,m,p,pr);let ret;return isX(M)?ret="":isX(m)?ret=`>=${M}.0.0${z} <${+M+1}.0.0-0`:isX(p)?M==="0"?ret=`>=${M}.${m}.0${z} <${M}.${+m+1}.0-0`:ret=`>=${M}.${m}.0${z} <${+M+1}.0.0-0`:pr?(debug("replaceCaret pr",pr),M==="0"?m==="0"?ret=`>=${M}.${m}.${p}-${pr} <${M}.${m}.${+p+1}-0`:ret=`>=${M}.${m}.${p}-${pr} <${M}.${+m+1}.0-0`:ret=`>=${M}.${m}.${p}-${pr} <${+M+1}.0.0-0`):(debug("no pr"),M==="0"?m==="0"?ret=`>=${M}.${m}.${p}${z} <${M}.${m}.${+p+1}-0`:ret=`>=${M}.${m}.${p}${z} <${M}.${+m+1}.0-0`:ret=`>=${M}.${m}.${p} <${+M+1}.0.0-0`),debug("caret return",ret),ret})},replaceXRanges=(comp,options)=>(debug("replaceXRanges",comp,options),comp.split(/\s+/).map(c=>replaceXRange(c,options)).join(" ")),replaceXRange=(comp,options)=>{comp=comp.trim();let r=options.loose?re[t7.XRANGELOOSE]:re[t7.XRANGE];return comp.replace(r,(ret,gtlt,M,m,p,pr)=>{debug("xRange",comp,ret,gtlt,M,m,p,pr);let xM=isX(M),xm=xM||isX(m),xp=xm||isX(p),anyX=xp;return gtlt==="="&&anyX&&(gtlt=""),pr=options.includePrerelease?"-0":"",xM?gtlt===">"||gtlt==="<"?ret="<0.0.0-0":ret="*":gtlt&&anyX?(xm&&(m=0),p=0,gtlt===">"?(gtlt=">=",xm?(M=+M+1,m=0,p=0):(m=+m+1,p=0)):gtlt==="<="&&(gtlt="<",xm?M=+M+1:m=+m+1),gtlt==="<"&&(pr="-0"),ret=`${gtlt+M}.${m}.${p}${pr}`):xm?ret=`>=${M}.0.0${pr} <${+M+1}.0.0-0`:xp&&(ret=`>=${M}.${m}.0${pr} <${M}.${+m+1}.0-0`),debug("xRange return",ret),ret})},replaceStars=(comp,options)=>(debug("replaceStars",comp,options),comp.trim().replace(re[t7.STAR],"")),replaceGTE0=(comp,options)=>(debug("replaceGTE0",comp,options),comp.trim().replace(re[options.includePrerelease?t7.GTE0PRE:t7.GTE0],"")),hyphenReplace=incPr=>($0,from,fM,fm,fp,fpr,fb,to,tM,tm,tp,tpr)=>(isX(fM)?from="":isX(fm)?from=`>=${fM}.0.0${incPr?"-0":""}`:isX(fp)?from=`>=${fM}.${fm}.0${incPr?"-0":""}`:fpr?from=`>=${from}`:from=`>=${from}${incPr?"-0":""}`,isX(tM)?to="":isX(tm)?to=`<${+tM+1}.0.0-0`:isX(tp)?to=`<${tM}.${+tm+1}.0-0`:tpr?to=`<=${tM}.${tm}.${tp}-${tpr}`:incPr?to=`<${tM}.${tm}.${+tp+1}-0`:to=`<=${to}`,`${from} ${to}`.trim()),testSet=(set,version2,options)=>{for(let i=0;i<set.length;i++)if(!set[i].test(version2))return!1;if(version2.prerelease.length&&!options.includePrerelease){for(let i=0;i<set.length;i++)if(debug(set[i].semver),set[i].semver!==Comparator.ANY&&set[i].semver.prerelease.length>0){let allowed=set[i].semver;if(allowed.major===version2.major&&allowed.minor===version2.minor&&allowed.patch===version2.patch)return!0}return!1}return!0}}});var require_comparator=__commonJS({"../../node_modules/semver/classes/comparator.js"(exports2,module2){"use strict";var ANY=Symbol("SemVer ANY"),Comparator=class _Comparator{static get ANY(){return ANY}constructor(comp,options){if(options=parseOptions(options),comp instanceof _Comparator){if(comp.loose===!!options.loose)return comp;comp=comp.value}comp=comp.trim().split(/\s+/).join(" "),debug("comparator",comp,options),this.options=options,this.loose=!!options.loose,this.parse(comp),this.semver===ANY?this.value="":this.value=this.operator+this.semver.version,debug("comp",this)}parse(comp){let r=this.options.loose?re[t7.COMPARATORLOOSE]:re[t7.COMPARATOR],m=comp.match(r);if(!m)throw new TypeError(`Invalid comparator: ${comp}`);this.operator=m[1]!==void 0?m[1]:"",this.operator==="="&&(this.operator=""),m[2]?this.semver=new SemVer2(m[2],this.options.loose):this.semver=ANY}toString(){return this.value}test(version2){if(debug("Comparator.test",version2,this.options.loose),this.semver===ANY||version2===ANY)return!0;if(typeof version2=="string")try{version2=new SemVer2(version2,this.options)}catch{return!1}return cmp(version2,this.operator,this.semver,this.options)}intersects(comp,options){if(!(comp instanceof _Comparator))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new Range(comp.value,options).test(this.value):comp.operator===""?comp.value===""?!0:new Range(this.value,options).test(comp.semver):(options=parseOptions(options),options.includePrerelease&&(this.value==="<0.0.0-0"||comp.value==="<0.0.0-0")||!options.includePrerelease&&(this.value.startsWith("<0.0.0")||comp.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&comp.operator.startsWith(">")||this.operator.startsWith("<")&&comp.operator.startsWith("<")||this.semver.version===comp.semver.version&&this.operator.includes("=")&&comp.operator.includes("=")||cmp(this.semver,"<",comp.semver,options)&&this.operator.startsWith(">")&&comp.operator.startsWith("<")||cmp(this.semver,">",comp.semver,options)&&this.operator.startsWith("<")&&comp.operator.startsWith(">")))}};module2.exports=Comparator;var parseOptions=require_parse_options(),{safeRe:re,t:t7}=require_re(),cmp=require_cmp(),debug=require_debug(),SemVer2=require_semver(),Range=require_range()}});var require_satisfies=__commonJS({"../../node_modules/semver/functions/satisfies.js"(exports2,module2){"use strict";var Range=require_range(),satisfies=(version2,range,options)=>{try{range=new Range(range,options)}catch{return!1}return range.test(version2)};module2.exports=satisfies}});var require_to_comparators=__commonJS({"../../node_modules/semver/ranges/to-comparators.js"(exports2,module2){"use strict";var Range=require_range(),toComparators=(range,options)=>new Range(range,options).set.map(comp=>comp.map(c=>c.value).join(" ").trim().split(" "));module2.exports=toComparators}});var require_max_satisfying=__commonJS({"../../node_modules/semver/ranges/max-satisfying.js"(exports2,module2){"use strict";var SemVer2=require_semver(),Range=require_range(),maxSatisfying=(versions8,range,options)=>{let max=null,maxSV=null,rangeObj=null;try{rangeObj=new Range(range,options)}catch{return null}return versions8.forEach(v=>{rangeObj.test(v)&&(!max||maxSV.compare(v)===-1)&&(max=v,maxSV=new SemVer2(max,options))}),max};module2.exports=maxSatisfying}});var require_min_satisfying=__commonJS({"../../node_modules/semver/ranges/min-satisfying.js"(exports2,module2){"use strict";var SemVer2=require_semver(),Range=require_range(),minSatisfying=(versions8,range,options)=>{let min=null,minSV=null,rangeObj=null;try{rangeObj=new Range(range,options)}catch{return null}return versions8.forEach(v=>{rangeObj.test(v)&&(!min||minSV.compare(v)===1)&&(min=v,minSV=new SemVer2(min,options))}),min};module2.exports=minSatisfying}});var require_min_version=__commonJS({"../../node_modules/semver/ranges/min-version.js"(exports2,module2){"use strict";var SemVer2=require_semver(),Range=require_range(),gt3=require_gt(),minVersion=(range,loose)=>{range=new Range(range,loose);let minver=new SemVer2("0.0.0");if(range.test(minver)||(minver=new SemVer2("0.0.0-0"),range.test(minver)))return minver;minver=null;for(let i=0;i<range.set.length;++i){let comparators=range.set[i],setMin=null;comparators.forEach(comparator=>{let compver=new SemVer2(comparator.semver.version);switch(comparator.operator){case">":compver.prerelease.length===0?compver.patch++:compver.prerelease.push(0),compver.raw=compver.format();case"":case">=":(!setMin||gt3(compver,setMin))&&(setMin=compver);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${comparator.operator}`)}}),setMin&&(!minver||gt3(minver,setMin))&&(minver=setMin)}return minver&&range.test(minver)?minver:null};module2.exports=minVersion}});var require_valid2=__commonJS({"../../node_modules/semver/ranges/valid.js"(exports2,module2){"use strict";var Range=require_range(),validRange=(range,options)=>{try{return new Range(range,options).range||"*"}catch{return null}};module2.exports=validRange}});var require_outside=__commonJS({"../../node_modules/semver/ranges/outside.js"(exports2,module2){"use strict";var SemVer2=require_semver(),Comparator=require_comparator(),{ANY}=Comparator,Range=require_range(),satisfies=require_satisfies(),gt3=require_gt(),lt6=require_lt(),lte=require_lte(),gte=require_gte(),outside=(version2,range,hilo,options)=>{version2=new SemVer2(version2,options),range=new Range(range,options);let gtfn,ltefn,ltfn,comp,ecomp;switch(hilo){case">":gtfn=gt3,ltefn=lte,ltfn=lt6,comp=">",ecomp=">=";break;case"<":gtfn=lt6,ltefn=gte,ltfn=gt3,comp="<",ecomp="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(satisfies(version2,range,options))return!1;for(let i=0;i<range.set.length;++i){let comparators=range.set[i],high=null,low=null;if(comparators.forEach(comparator=>{comparator.semver===ANY&&(comparator=new Comparator(">=0.0.0")),high=high||comparator,low=low||comparator,gtfn(comparator.semver,high.semver,options)?high=comparator:ltfn(comparator.semver,low.semver,options)&&(low=comparator)}),high.operator===comp||high.operator===ecomp||(!low.operator||low.operator===comp)&<efn(version2,low.semver))return!1;if(low.operator===ecomp&<fn(version2,low.semver))return!1}return!0};module2.exports=outside}});var require_gtr=__commonJS({"../../node_modules/semver/ranges/gtr.js"(exports2,module2){"use strict";var outside=require_outside(),gtr=(version2,range,options)=>outside(version2,range,">",options);module2.exports=gtr}});var require_ltr=__commonJS({"../../node_modules/semver/ranges/ltr.js"(exports2,module2){"use strict";var outside=require_outside(),ltr=(version2,range,options)=>outside(version2,range,"<",options);module2.exports=ltr}});var require_intersects=__commonJS({"../../node_modules/semver/ranges/intersects.js"(exports2,module2){"use strict";var Range=require_range(),intersects=(r1,r2,options)=>(r1=new Range(r1,options),r2=new Range(r2,options),r1.intersects(r2,options));module2.exports=intersects}});var require_simplify=__commonJS({"../../node_modules/semver/ranges/simplify.js"(exports2,module2){"use strict";var satisfies=require_satisfies(),compare=require_compare();module2.exports=(versions8,range,options)=>{let set=[],first=null,prev=null,v=versions8.sort((a,b)=>compare(a,b,options));for(let version2 of v)satisfies(version2,range,options)?(prev=version2,first||(first=version2)):(prev&&set.push([first,prev]),prev=null,first=null);first&&set.push([first,null]);let ranges=[];for(let[min,max]of set)min===max?ranges.push(min):!max&&min===v[0]?ranges.push("*"):max?min===v[0]?ranges.push(`<=${max}`):ranges.push(`${min} - ${max}`):ranges.push(`>=${min}`);let simplified=ranges.join(" || "),original=typeof range.raw=="string"?range.raw:String(range);return simplified.length<original.length?simplified:range}}});var require_subset=__commonJS({"../../node_modules/semver/ranges/subset.js"(exports2,module2){"use strict";var Range=require_range(),Comparator=require_comparator(),{ANY}=Comparator,satisfies=require_satisfies(),compare=require_compare(),subset=(sub,dom,options={})=>{if(sub===dom)return!0;sub=new Range(sub,options),dom=new Range(dom,options);let sawNonNull=!1;OUTER:for(let simpleSub of sub.set){for(let simpleDom of dom.set){let isSub=simpleSubset(simpleSub,simpleDom,options);if(sawNonNull=sawNonNull||isSub!==null,isSub)continue OUTER}if(sawNonNull)return!1}return!0},minimumVersionWithPreRelease=[new Comparator(">=0.0.0-0")],minimumVersion=[new Comparator(">=0.0.0")],simpleSubset=(sub,dom,options)=>{if(sub===dom)return!0;if(sub.length===1&&sub[0].semver===ANY){if(dom.length===1&&dom[0].semver===ANY)return!0;options.includePrerelease?sub=minimumVersionWithPreRelease:sub=minimumVersion}if(dom.length===1&&dom[0].semver===ANY){if(options.includePrerelease)return!0;dom=minimumVersion}let eqSet=new Set,gt3,lt6;for(let c of sub)c.operator===">"||c.operator===">="?gt3=higherGT(gt3,c,options):c.operator==="<"||c.operator==="<="?lt6=lowerLT(lt6,c,options):eqSet.add(c.semver);if(eqSet.size>1)return null;let gtltComp;if(gt3&<6){if(gtltComp=compare(gt3.semver,lt6.semver,options),gtltComp>0)return null;if(gtltComp===0&&(gt3.operator!==">="||lt6.operator!=="<="))return null}for(let eq of eqSet){if(gt3&&!satisfies(eq,String(gt3),options)||lt6&&!satisfies(eq,String(lt6),options))return null;for(let c of dom)if(!satisfies(eq,String(c),options))return!1;return!0}let higher,lower,hasDomLT,hasDomGT,needDomLTPre=lt6&&!options.includePrerelease&<6.semver.prerelease.length?lt6.semver:!1,needDomGTPre=gt3&&!options.includePrerelease&>3.semver.prerelease.length?gt3.semver:!1;needDomLTPre&&needDomLTPre.prerelease.length===1&<6.operator==="<"&&needDomLTPre.prerelease[0]===0&&(needDomLTPre=!1);for(let c of dom){if(hasDomGT=hasDomGT||c.operator===">"||c.operator===">=",hasDomLT=hasDomLT||c.operator==="<"||c.operator==="<=",gt3){if(needDomGTPre&&c.semver.prerelease&&c.semver.prerelease.length&&c.semver.major===needDomGTPre.major&&c.semver.minor===needDomGTPre.minor&&c.semver.patch===needDomGTPre.patch&&(needDomGTPre=!1),c.operator===">"||c.operator===">="){if(higher=higherGT(gt3,c,options),higher===c&&higher!==gt3)return!1}else if(gt3.operator===">="&&!satisfies(gt3.semver,String(c),options))return!1}if(lt6){if(needDomLTPre&&c.semver.prerelease&&c.semver.prerelease.length&&c.semver.major===needDomLTPre.major&&c.semver.minor===needDomLTPre.minor&&c.semver.patch===needDomLTPre.patch&&(needDomLTPre=!1),c.operator==="<"||c.operator==="<="){if(lower=lowerLT(lt6,c,options),lower===c&&lower!==lt6)return!1}else if(lt6.operator==="<="&&!satisfies(lt6.semver,String(c),options))return!1}if(!c.operator&&(lt6||gt3)&>ltComp!==0)return!1}return!(gt3&&hasDomLT&&!lt6&>ltComp!==0||lt6&&hasDomGT&&!gt3&>ltComp!==0||needDomGTPre||needDomLTPre)},higherGT=(a,b,options)=>{if(!a)return b;let comp=compare(a.semver,b.semver,options);return comp>0?a:comp<0||b.operator===">"&&a.operator===">="?b:a},lowerLT=(a,b,options)=>{if(!a)return b;let comp=compare(a.semver,b.semver,options);return comp<0?a:comp>0||b.operator==="<"&&a.operator==="<="?b:a};module2.exports=subset}});var require_semver2=__commonJS({"../../node_modules/semver/index.js"(exports2,module2){"use strict";var internalRe=require_re(),constants=require_constants(),SemVer2=require_semver(),identifiers=require_identifiers(),parse2=require_parse(),valid=require_valid(),clean2=require_clean(),inc=require_inc(),diff=require_diff(),major2=require_major(),minor=require_minor(),patch=require_patch(),prerelease3=require_prerelease(),compare=require_compare(),rcompare=require_rcompare(),compareLoose=require_compare_loose(),compareBuild=require_compare_build(),sort=require_sort(),rsort=require_rsort(),gt3=require_gt(),lt6=require_lt(),eq=require_eq(),neq=require_neq(),gte=require_gte(),lte=require_lte(),cmp=require_cmp(),coerce2=require_coerce(),Comparator=require_comparator(),Range=require_range(),satisfies=require_satisfies(),toComparators=require_to_comparators(),maxSatisfying=require_max_satisfying(),minSatisfying=require_min_satisfying(),minVersion=require_min_version(),validRange=require_valid2(),outside=require_outside(),gtr=require_gtr(),ltr=require_ltr(),intersects=require_intersects(),simplifyRange=require_simplify(),subset=require_subset();module2.exports={parse:parse2,valid,clean:clean2,inc,diff,major:major2,minor,patch,prerelease:prerelease3,compare,rcompare,compareLoose,compareBuild,sort,rsort,gt:gt3,lt:lt6,eq,neq,gte,lte,cmp,coerce:coerce2,Comparator,Range,satisfies,toComparators,maxSatisfying,minSatisfying,minVersion,validRange,outside,gtr,ltr,intersects,simplifyRange,subset,SemVer:SemVer2,re:internalRe.re,src:internalRe.src,tokens:internalRe.t,SEMVER_SPEC_VERSION:constants.SEMVER_SPEC_VERSION,RELEASE_TYPES:constants.RELEASE_TYPES,compareIdentifiers:identifiers.compareIdentifiers,rcompareIdentifiers:identifiers.rcompareIdentifiers}}});function ansiRegex({onlyFirst=!1}={}){let pattern=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(pattern,onlyFirst?void 0:"g")}var init_ansi_regex=__esm({"../../node_modules/ansi-regex/index.js"(){"use strict"}});var regex,init_strip_ansi=__esm({"../../node_modules/strip-ansi/index.js"(){"use strict";init_ansi_regex();regex=ansiRegex()}});var require_eastasianwidth=__commonJS({"../../node_modules/eastasianwidth/eastasianwidth.js"(exports2,module2){"use strict";var eaw={};typeof module2>"u"?window.eastasianwidth=eaw:module2.exports=eaw;eaw.eastAsianWidth=function(character){var x=character.charCodeAt(0),y=character.length==2?character.charCodeAt(1):0,codePoint=x;return 55296<=x&&x<=56319&&56320<=y&&y<=57343&&(x&=1023,y&=1023,codePoint=x<<10|y,codePoint+=65536),codePoint==12288||65281<=codePoint&&codePoint<=65376||65504<=codePoint&&codePoint<=65510?"F":codePoint==8361||65377<=codePoint&&codePoint<=65470||65474<=codePoint&&codePoint<=65479||65482<=codePoint&&codePoint<=65487||65490<=codePoint&&codePoint<=65495||65498<=codePoint&&codePoint<=65500||65512<=codePoint&&codePoint<=65518?"H":4352<=codePoint&&codePoint<=4447||4515<=codePoint&&codePoint<=4519||4602<=codePoint&&codePoint<=4607||9001<=codePoint&&codePoint<=9002||11904<=codePoint&&codePoint<=11929||11931<=codePoint&&codePoint<=12019||12032<=codePoint&&codePoint<=12245||12272<=codePoint&&codePoint<=12283||12289<=codePoint&&codePoint<=12350||12353<=codePoint&&codePoint<=12438||12441<=codePoint&&codePoint<=12543||12549<=codePoint&&codePoint<=12589||12593<=codePoint&&codePoint<=12686||12688<=codePoint&&codePoint<=12730||12736<=codePoint&&codePoint<=12771||12784<=codePoint&&codePoint<=12830||12832<=codePoint&&codePoint<=12871||12880<=codePoint&&codePoint<=13054||13056<=codePoint&&codePoint<=19903||19968<=codePoint&&codePoint<=42124||42128<=codePoint&&codePoint<=42182||43360<=codePoint&&codePoint<=43388||44032<=codePoint&&codePoint<=55203||55216<=codePoint&&codePoint<=55238||55243<=codePoint&&codePoint<=55291||63744<=codePoint&&codePoint<=64255||65040<=codePoint&&codePoint<=65049||65072<=codePoint&&codePoint<=65106||65108<=codePoint&&codePoint<=65126||65128<=codePoint&&codePoint<=65131||110592<=codePoint&&codePoint<=110593||127488<=codePoint&&codePoint<=127490||127504<=codePoint&&codePoint<=127546||127552<=codePoint&&codePoint<=127560||127568<=codePoint&&codePoint<=127569||131072<=codePoint&&codePoint<=194367||177984<=codePoint&&codePoint<=196605||196608<=codePoint&&codePoint<=262141?"W":32<=codePoint&&codePoint<=126||162<=codePoint&&codePoint<=163||165<=codePoint&&codePoint<=166||codePoint==172||codePoint==175||10214<=codePoint&&codePoint<=10221||10629<=codePoint&&codePoint<=10630?"Na":codePoint==161||codePoint==164||167<=codePoint&&codePoint<=168||codePoint==170||173<=codePoint&&codePoint<=174||176<=codePoint&&codePoint<=180||182<=codePoint&&codePoint<=186||188<=codePoint&&codePoint<=191||codePoint==198||codePoint==208||215<=codePoint&&codePoint<=216||222<=codePoint&&codePoint<=225||codePoint==230||232<=codePoint&&codePoint<=234||236<=codePoint&&codePoint<=237||codePoint==240||242<=codePoint&&codePoint<=243||247<=codePoint&&codePoint<=250||codePoint==252||codePoint==254||codePoint==257||codePoint==273||codePoint==275||codePoint==283||294<=codePoint&&codePoint<=295||codePoint==299||305<=codePoint&&codePoint<=307||codePoint==312||319<=codePoint&&codePoint<=322||codePoint==324||328<=codePoint&&codePoint<=331||codePoint==333||338<=codePoint&&codePoint<=339||358<=codePoint&&codePoint<=359||codePoint==363||codePoint==462||codePoint==464||codePoint==466||codePoint==468||codePoint==470||codePoint==472||codePoint==474||codePoint==476||codePoint==593||codePoint==609||codePoint==708||codePoint==711||713<=codePoint&&codePoint<=715||codePoint==717||codePoint==720||728<=codePoint&&codePoint<=731||codePoint==733||codePoint==735||768<=codePoint&&codePoint<=879||913<=codePoint&&codePoint<=929||931<=codePoint&&codePoint<=937||945<=codePoint&&codePoint<=961||963<=codePoint&&codePoint<=969||codePoint==1025||1040<=codePoint&&codePoint<=1103||codePoint==1105||codePoint==8208||8211<=codePoint&&codePoint<=8214||8216<=codePoint&&codePoint<=8217||8220<=codePoint&&codePoint<=8221||8224<=codePoint&&codePoint<=8226||8228<=codePoint&&codePoint<=8231||codePoint==8240||8242<=codePoint&&codePoint<=8243||codePoint==8245||codePoint==8251||codePoint==8254||codePoint==8308||codePoint==8319||8321<=codePoint&&codePoint<=8324||codePoint==8364||codePoint==8451||codePoint==8453||codePoint==8457||codePoint==8467||codePoint==8470||8481<=codePoint&&codePoint<=8482||codePoint==8486||codePoint==8491||8531<=codePoint&&codePoint<=8532||8539<=codePoint&&codePoint<=8542||8544<=codePoint&&codePoint<=8555||8560<=codePoint&&codePoint<=8569||codePoint==8585||8592<=codePoint&&codePoint<=8601||8632<=codePoint&&codePoint<=8633||codePoint==8658||codePoint==8660||codePoint==8679||codePoint==8704||8706<=codePoint&&codePoint<=8707||8711<=codePoint&&codePoint<=8712||codePoint==8715||codePoint==8719||codePoint==8721||codePoint==8725||codePoint==8730||8733<=codePoint&&codePoint<=8736||codePoint==8739||codePoint==8741||8743<=codePoint&&codePoint<=8748||codePoint==8750||8756<=codePoint&&codePoint<=8759||8764<=codePoint&&codePoint<=8765||codePoint==8776||codePoint==8780||codePoint==8786||8800<=codePoint&&codePoint<=8801||8804<=codePoint&&codePoint<=8807||8810<=codePoint&&codePoint<=8811||8814<=codePoint&&codePoint<=8815||8834<=codePoint&&codePoint<=8835||8838<=codePoint&&codePoint<=8839||codePoint==8853||codePoint==8857||codePoint==8869||codePoint==8895||codePoint==8978||9312<=codePoint&&codePoint<=9449||9451<=codePoint&&codePoint<=9547||9552<=codePoint&&codePoint<=9587||9600<=codePoint&&codePoint<=9615||9618<=codePoint&&codePoint<=9621||9632<=codePoint&&codePoint<=9633||9635<=codePoint&&codePoint<=9641||9650<=codePoint&&codePoint<=9651||9654<=codePoint&&codePoint<=9655||9660<=codePoint&&codePoint<=9661||9664<=codePoint&&codePoint<=9665||9670<=codePoint&&codePoint<=9672||codePoint==9675||9678<=codePoint&&codePoint<=9681||9698<=codePoint&&codePoint<=9701||codePoint==9711||9733<=codePoint&&codePoint<=9734||codePoint==9737||9742<=codePoint&&codePoint<=9743||9748<=codePoint&&codePoint<=9749||codePoint==9756||codePoint==9758||codePoint==9792||codePoint==9794||9824<=codePoint&&codePoint<=9825||9827<=codePoint&&codePoint<=9829||9831<=codePoint&&codePoint<=9834||9836<=codePoint&&codePoint<=9837||codePoint==9839||9886<=codePoint&&codePoint<=9887||9918<=codePoint&&codePoint<=9919||9924<=codePoint&&codePoint<=9933||9935<=codePoint&&codePoint<=9953||codePoint==9955||9960<=codePoint&&codePoint<=9983||codePoint==10045||codePoint==10071||10102<=codePoint&&codePoint<=10111||11093<=codePoint&&codePoint<=11097||12872<=codePoint&&codePoint<=12879||57344<=codePoint&&codePoint<=63743||65024<=codePoint&&codePoint<=65039||codePoint==65533||127232<=codePoint&&codePoint<=127242||127248<=codePoint&&codePoint<=127277||127280<=codePoint&&codePoint<=127337||127344<=codePoint&&codePoint<=127386||917760<=codePoint&&codePoint<=917999||983040<=codePoint&&codePoint<=1048573||1048576<=codePoint&&codePoint<=1114109?"A":"N"};eaw.characterLength=function(character){var code=this.eastAsianWidth(character);return code=="F"||code=="W"||code=="A"?2:1};function stringToArray(string){return string.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}eaw.length=function(string){for(var characters=stringToArray(string),len=0,i=0;i<characters.length;i++)len=len+this.characterLength(characters[i]);return len};eaw.slice=function(text,start,end){textLen=eaw.length(text),start=start||0,end=end||1,start<0&&(start=textLen+start),end<0&&(end=textLen+end);for(var result="",eawLen=0,chars=stringToArray(text),i=0;i<chars.length;i++){var char=chars[i],charLen=eaw.length(char);if(eawLen>=start-(charLen==2?1:0))if(eawLen+charLen<=end)result+=char;else break;eawLen+=charLen}return result}}});var require_emoji_regex=__commonJS({"../../node_modules/emoji-regex/index.js"(exports2,module2){"use strict";module2.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\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|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\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]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\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]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\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\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}}});var import_eastasianwidth,import_emoji_regex,init_string_width=__esm({"../../node_modules/boxen/node_modules/string-width/index.js"(){"use strict";init_strip_ansi();import_eastasianwidth=__toESM(require_eastasianwidth(),1),import_emoji_regex=__toESM(require_emoji_regex(),1)}});var init_widest_line=__esm({"../../node_modules/boxen/node_modules/widest-line/index.js"(){"use strict";init_string_width()}});var require_boxes=__commonJS({"../../node_modules/cli-boxes/boxes.json"(exports2,module2){module2.exports={single:{topLeft:"\u250C",top:"\u2500",topRight:"\u2510",right:"\u2502",bottomRight:"\u2518",bottom:"\u2500",bottomLeft:"\u2514",left:"\u2502"},double:{topLeft:"\u2554",top:"\u2550",topRight:"\u2557",right:"\u2551",bottomRight:"\u255D",bottom:"\u2550",bottomLeft:"\u255A",left:"\u2551"},round:{topLeft:"\u256D",top:"\u2500",topRight:"\u256E",right:"\u2502",bottomRight:"\u256F",bottom:"\u2500",bottomLeft:"\u2570",left:"\u2502"},bold:{topLeft:"\u250F",top:"\u2501",topRight:"\u2513",right:"\u2503",bottomRight:"\u251B",bottom:"\u2501",bottomLeft:"\u2517",left:"\u2503"},singleDouble:{topLeft:"\u2553",top:"\u2500",topRight:"\u2556",right:"\u2551",bottomRight:"\u255C",bottom:"\u2500",bottomLeft:"\u2559",left:"\u2551"},doubleSingle:{topLeft:"\u2552",top:"\u2550",topRight:"\u2555",right:"\u2502",bottomRight:"\u255B",bottom:"\u2550",bottomLeft:"\u2558",left:"\u2502"},classic:{topLeft:"+",top:"-",topRight:"+",right:"|",bottomRight:"+",bottom:"-",bottomLeft:"+",left:"|"},arrow:{topLeft:"\u2198",top:"\u2193",topRight:"\u2199",right:"\u2190",bottomRight:"\u2196",bottom:"\u2191",bottomLeft:"\u2197",left:"\u2192"}}}});var require_cli_boxes=__commonJS({"../../node_modules/cli-boxes/index.js"(exports2,module2){"use strict";var cliBoxes2=require_boxes();module2.exports=cliBoxes2;module2.exports.default=cliBoxes2}});var IDENTIFIER,SEPARATORS,LEADING_SEPARATORS,SEPARATORS_AND_IDENTIFIER,NUMBERS_AND_IDENTIFIER,init_camelcase=__esm({"../../node_modules/boxen/node_modules/camelcase/index.js"(){"use strict";IDENTIFIER=/([\p{Alpha}\p{N}_]|$)/u,SEPARATORS=/[_.\- ]+/,LEADING_SEPARATORS=new RegExp("^"+SEPARATORS.source),SEPARATORS_AND_IDENTIFIER=new RegExp(SEPARATORS.source+IDENTIFIER.source,"gu"),NUMBERS_AND_IDENTIFIER=new RegExp("\\d+"+IDENTIFIER.source,"gu")}});var require_ansi_regex=__commonJS({"../../node_modules/string-width/node_modules/ansi-regex/index.js"(exports2,module2){"use strict";module2.exports=({onlyFirst=!1}={})=>{let pattern=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(pattern,onlyFirst?void 0:"g")}}});var require_strip_ansi=__commonJS({"../../node_modules/string-width/node_modules/strip-ansi/index.js"(exports2,module2){"use strict";var ansiRegex2=require_ansi_regex();module2.exports=string=>typeof string=="string"?string.replace(ansiRegex2(),""):string}});var require_is_fullwidth_code_point=__commonJS({"../../node_modules/is-fullwidth-code-point/index.js"(exports2,module2){"use strict";var isFullwidthCodePoint=codePoint=>Number.isNaN(codePoint)?!1:codePoint>=4352&&(codePoint<=4447||codePoint===9001||codePoint===9002||11904<=codePoint&&codePoint<=12871&&codePoint!==12351||12880<=codePoint&&codePoint<=19903||19968<=codePoint&&codePoint<=42182||43360<=codePoint&&codePoint<=43388||44032<=codePoint&&codePoint<=55203||63744<=codePoint&&codePoint<=64255||65040<=codePoint&&codePoint<=65049||65072<=codePoint&&codePoint<=65131||65281<=codePoint&&codePoint<=65376||65504<=codePoint&&codePoint<=65510||110592<=codePoint&&codePoint<=110593||127488<=codePoint&&codePoint<=127569||131072<=codePoint&&codePoint<=262141);module2.exports=isFullwidthCodePoint;module2.exports.default=isFullwidthCodePoint}});var require_emoji_regex2=__commonJS({"../../node_modules/string-width/node_modules/emoji-regex/index.js"(exports2,module2){"use strict";module2.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}}});var require_string_width=__commonJS({"../../node_modules/string-width/index.js"(exports2,module2){"use strict";var stripAnsi2=require_strip_ansi(),isFullwidthCodePoint=require_is_fullwidth_code_point(),emojiRegex3=require_emoji_regex2(),stringWidth3=string=>{if(typeof string!="string"||string.length===0||(string=stripAnsi2(string),string.length===0))return 0;string=string.replace(emojiRegex3()," ");let width=0;for(let i=0;i<string.length;i++){let code=string.codePointAt(i);code<=31||code>=127&&code<=159||code>=768&&code<=879||(code>65535&&i++,width+=isFullwidthCodePoint(code)?2:1)}return width};module2.exports=stringWidth3;module2.exports.default=stringWidth3}});var require_ansi_align=__commonJS({"../../node_modules/ansi-align/index.js"(exports2,module2){"use strict";var stringWidth3=require_string_width();function ansiAlign2(text,opts){if(!text)return text;opts=opts||{};let align=opts.align||"center";if(align==="left")return text;let split=opts.split||`
|
|
31
|
+
`,pad=opts.pad||" ",widthDiffFn=align!=="right"?halfDiff:fullDiff,returnString=!1;Array.isArray(text)||(returnString=!0,text=String(text).split(split));let width,maxWidth=0;return text=text.map(function(str){return str=String(str),width=stringWidth3(str),maxWidth=Math.max(width,maxWidth),{str,width}}).map(function(obj){return new Array(widthDiffFn(maxWidth,obj.width)+1).join(pad)+obj.str}),returnString?text.join(split):text}ansiAlign2.left=function(text){return ansiAlign2(text,{align:"left"})};ansiAlign2.center=function(text){return ansiAlign2(text,{align:"center"})};ansiAlign2.right=function(text){return ansiAlign2(text,{align:"right"})};module2.exports=ansiAlign2;function halfDiff(maxWidth,curWidth){return Math.floor((maxWidth-curWidth)/2)}function fullDiff(maxWidth,curWidth){return maxWidth-curWidth}}});var import_eastasianwidth2,import_emoji_regex2,init_string_width2=__esm({"../../node_modules/wrap-ansi/node_modules/string-width/index.js"(){"use strict";init_strip_ansi();import_eastasianwidth2=__toESM(require_eastasianwidth(),1),import_emoji_regex2=__toESM(require_emoji_regex(),1)}});function assembleStyles(){let codes=new Map;for(let[groupName,group]of Object.entries(styles)){for(let[styleName,style]of Object.entries(group))styles[styleName]={open:`\x1B[${style[0]}m`,close:`\x1B[${style[1]}m`},group[styleName]=styles[styleName],codes.set(style[0],style[1]);Object.defineProperty(styles,groupName,{value:group,enumerable:!1})}return Object.defineProperty(styles,"codes",{value:codes,enumerable:!1}),styles.color.close="\x1B[39m",styles.bgColor.close="\x1B[49m",styles.color.ansi=wrapAnsi16(),styles.color.ansi256=wrapAnsi256(),styles.color.ansi16m=wrapAnsi16m(),styles.bgColor.ansi=wrapAnsi16(10),styles.bgColor.ansi256=wrapAnsi256(10),styles.bgColor.ansi16m=wrapAnsi16m(10),Object.defineProperties(styles,{rgbToAnsi256:{value:(red,green,blue)=>red===green&&green===blue?red<8?16:red>248?231:Math.round((red-8)/247*24)+232:16+36*Math.round(red/255*5)+6*Math.round(green/255*5)+Math.round(blue/255*5),enumerable:!1},hexToRgb:{value:hex=>{let matches=/[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));if(!matches)return[0,0,0];let[colorString]=matches;colorString.length===3&&(colorString=[...colorString].map(character=>character+character).join(""));let integer=Number.parseInt(colorString,16);return[integer>>16&255,integer>>8&255,integer&255]},enumerable:!1},hexToAnsi256:{value:hex=>styles.rgbToAnsi256(...styles.hexToRgb(hex)),enumerable:!1},ansi256ToAnsi:{value:code=>{if(code<8)return 30+code;if(code<16)return 90+(code-8);let red,green,blue;if(code>=232)red=((code-232)*10+8)/255,green=red,blue=red;else{code-=16;let remainder=code%36;red=Math.floor(code/36)/5,green=Math.floor(remainder/6)/5,blue=remainder%6/5}let value=Math.max(red,green,blue)*2;if(value===0)return 30;let result=30+(Math.round(blue)<<2|Math.round(green)<<1|Math.round(red));return value===2&&(result+=60),result},enumerable:!1},rgbToAnsi:{value:(red,green,blue)=>styles.ansi256ToAnsi(styles.rgbToAnsi256(red,green,blue)),enumerable:!1},hexToAnsi:{value:hex=>styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),enumerable:!1}}),styles}var wrapAnsi16,wrapAnsi256,wrapAnsi16m,styles,modifierNames,foregroundColorNames,backgroundColorNames,colorNames,ansiStyles,init_ansi_styles=__esm({"../../node_modules/wrap-ansi/node_modules/ansi-styles/index.js"(){"use strict";wrapAnsi16=(offset=0)=>code=>`\x1B[${code+offset}m`,wrapAnsi256=(offset=0)=>code=>`\x1B[${38+offset};5;${code}m`,wrapAnsi16m=(offset=0)=>(red,green,blue)=>`\x1B[${38+offset};2;${red};${green};${blue}m`,styles={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},modifierNames=Object.keys(styles.modifier),foregroundColorNames=Object.keys(styles.color),backgroundColorNames=Object.keys(styles.bgColor),colorNames=[...foregroundColorNames,...backgroundColorNames];ansiStyles=assembleStyles()}});var ANSI_OSC,ANSI_ESCAPE_LINK,init_wrap_ansi=__esm({"../../node_modules/wrap-ansi/index.js"(){"use strict";init_string_width2();init_strip_ansi();init_ansi_styles();ANSI_OSC="]",ANSI_ESCAPE_LINK=`${ANSI_OSC}8;;`}});var import_node_process,import_cli_boxes,import_ansi_align,import_cli_boxes2,init_boxen=__esm({"../../node_modules/boxen/index.js"(){"use strict";import_node_process=__toESM(require("process"),1);init_string_width();init_widest_line();import_cli_boxes=__toESM(require_cli_boxes(),1);init_camelcase();import_ansi_align=__toESM(require_ansi_align(),1);init_wrap_ansi();import_cli_boxes2=__toESM(require_cli_boxes(),1)}});var Node,Queue,init_yocto_queue=__esm({"../../node_modules/yocto-queue/index.js"(){"use strict";Node=class{value;next;constructor(value){this.value=value}},Queue=class{#head;#tail;#size;constructor(){this.clear()}enqueue(value){let node=new Node(value);this.#head?(this.#tail.next=node,this.#tail=node):(this.#head=node,this.#tail=node),this.#size++}dequeue(){let current=this.#head;if(current)return this.#head=this.#head.next,this.#size--,current.value}peek(){if(this.#head)return this.#head.value}clear(){this.#head=void 0,this.#tail=void 0,this.#size=0}get size(){return this.#size}*[Symbol.iterator](){let current=this.#head;for(;current;)yield current.value,current=current.next}*drain(){for(;this.#head;)yield this.dequeue()}}}});var init_p_limit=__esm({"../../node_modules/locate-path/node_modules/p-limit/index.js"(){"use strict"}});var init_p_locate=__esm({"../../node_modules/locate-path/node_modules/p-locate/index.js"(){"use strict";init_p_limit()}});function checkType(type){if(!Object.hasOwnProperty.call(typeMappings,type))throw new Error(`Invalid type specified: ${type}`)}function locatePathSync(paths,{cwd=import_node_process2.default.cwd(),type="file",allowSymlinks=!0}={}){checkType(type),cwd=toPath(cwd);let statFunction=allowSymlinks?import_node_fs.default.statSync:import_node_fs.default.lstatSync;for(let path_ of paths)try{let stat=statFunction(import_node_path.default.resolve(cwd,path_),{throwIfNoEntry:!1});if(!stat)continue;if(matchType(type,stat))return path_}catch{}}var import_node_process2,import_node_path,import_node_fs,import_node_url,typeMappings,matchType,toPath,init_locate_path=__esm({"../../node_modules/locate-path/index.js"(){"use strict";import_node_process2=__toESM(require("process"),1),import_node_path=__toESM(require("path"),1),import_node_fs=__toESM(require("fs"),1),import_node_url=require("url");init_p_locate();typeMappings={directory:"isDirectory",file:"isFile"};matchType=(type,stat)=>stat[typeMappings[type]](),toPath=urlOrPath=>urlOrPath instanceof URL?(0,import_node_url.fileURLToPath)(urlOrPath):urlOrPath}});var init_default=__esm({"../../node_modules/find-up/node_modules/unicorn-magic/default.js"(){"use strict"}});function toPath2(urlOrPath){return urlOrPath instanceof URL?(0,import_node_url2.fileURLToPath)(urlOrPath):urlOrPath}var import_node_url2,init_node=__esm({"../../node_modules/find-up/node_modules/unicorn-magic/node.js"(){"use strict";import_node_url2=require("url");init_default()}});var import_node_fs2,init_path_exists=__esm({"../../node_modules/find-up/node_modules/path-exists/index.js"(){"use strict";import_node_fs2=__toESM(require("fs"),1)}});function findUpMultipleSync(name,options={}){let directory=import_node_path2.default.resolve(toPath2(options.cwd)??""),{root}=import_node_path2.default.parse(directory),stopAt=import_node_path2.default.resolve(directory,toPath2(options.stopAt)??root),limit=options.limit??Number.POSITIVE_INFINITY,paths=[name].flat(),runMatcher=locateOptions=>{if(typeof name!="function")return locatePathSync(paths,locateOptions);let foundPath=name(locateOptions.cwd);return typeof foundPath=="string"?locatePathSync([foundPath],locateOptions):foundPath},matches=[];for(;;){let foundPath=runMatcher({...options,cwd:directory});if(foundPath===findUpStop||(foundPath&&matches.push(import_node_path2.default.resolve(directory,foundPath)),directory===stopAt||matches.length>=limit))break;directory=import_node_path2.default.dirname(directory)}return matches}var import_node_path2,findUpStop,init_find_up=__esm({"../../node_modules/find-up/index.js"(){"use strict";import_node_path2=__toESM(require("path"),1);init_locate_path();init_node();init_path_exists();findUpStop=Symbol("findUpStop")}});function mergeStreams(streams){if(!Array.isArray(streams))throw new TypeError(`Expected an array, got \`${typeof streams}\`.`);for(let stream of streams)validateStream(stream);let objectMode=streams.some(({readableObjectMode})=>readableObjectMode),highWaterMark=getHighWaterMark(streams,objectMode),passThroughStream=new MergedStream({objectMode,writableHighWaterMark:highWaterMark,readableHighWaterMark:highWaterMark});for(let stream of streams)passThroughStream.add(stream);return streams.length===0&&endStream(passThroughStream),passThroughStream}var import_node_events,import_node_stream,import_promises,getHighWaterMark,MergedStream,onMergedStreamFinished,onMergedStreamEnd,onInputStreamsUnpipe,validateStream,endWhenStreamsDone,isAbortError,afterMergedStreamFinished,onInputStreamEnd,onInputStreamUnpipe,unpipeEvent,endStream,abortStream,errorStream,noop,updateMaxListeners,PASSTHROUGH_LISTENERS_COUNT,PASSTHROUGH_LISTENERS_PER_STREAM,init_merge_streams=__esm({"../../node_modules/globby/node_modules/@sindresorhus/merge-streams/index.js"(){"use strict";import_node_events=require("events"),import_node_stream=require("stream"),import_promises=require("stream/promises");getHighWaterMark=(streams,objectMode)=>{if(streams.length===0)return 16384;let highWaterMarks=streams.filter(({readableObjectMode})=>readableObjectMode===objectMode).map(({readableHighWaterMark})=>readableHighWaterMark);return Math.max(...highWaterMarks)},MergedStream=class extends import_node_stream.PassThrough{#streams=new Set([]);#ended=new Set([]);#aborted=new Set([]);#onFinished;add(stream){validateStream(stream),!this.#streams.has(stream)&&(this.#streams.add(stream),this.#onFinished??=onMergedStreamFinished(this,this.#streams),endWhenStreamsDone({passThroughStream:this,stream,streams:this.#streams,ended:this.#ended,aborted:this.#aborted,onFinished:this.#onFinished}),stream.pipe(this,{end:!1}))}remove(stream){return validateStream(stream),this.#streams.has(stream)?(stream.unpipe(this),!0):!1}},onMergedStreamFinished=async(passThroughStream,streams)=>{updateMaxListeners(passThroughStream,PASSTHROUGH_LISTENERS_COUNT);let controller=new AbortController;try{await Promise.race([onMergedStreamEnd(passThroughStream,controller),onInputStreamsUnpipe(passThroughStream,streams,controller)])}finally{controller.abort(),updateMaxListeners(passThroughStream,-PASSTHROUGH_LISTENERS_COUNT)}},onMergedStreamEnd=async(passThroughStream,{signal})=>{await(0,import_promises.finished)(passThroughStream,{signal,cleanup:!0})},onInputStreamsUnpipe=async(passThroughStream,streams,{signal})=>{for await(let[unpipedStream]of(0,import_node_events.on)(passThroughStream,"unpipe",{signal}))streams.has(unpipedStream)&&unpipedStream.emit(unpipeEvent)},validateStream=stream=>{if(typeof stream?.pipe!="function")throw new TypeError(`Expected a readable stream, got: \`${typeof stream}\`.`)},endWhenStreamsDone=async({passThroughStream,stream,streams,ended,aborted,onFinished})=>{updateMaxListeners(passThroughStream,PASSTHROUGH_LISTENERS_PER_STREAM);let controller=new AbortController;try{await Promise.race([afterMergedStreamFinished(onFinished,stream),onInputStreamEnd({passThroughStream,stream,streams,ended,aborted,controller}),onInputStreamUnpipe({stream,streams,ended,aborted,controller})])}finally{controller.abort(),updateMaxListeners(passThroughStream,-PASSTHROUGH_LISTENERS_PER_STREAM)}streams.size===ended.size+aborted.size&&(ended.size===0&&aborted.size>0?abortStream(passThroughStream):endStream(passThroughStream))},isAbortError=error=>error?.code==="ERR_STREAM_PREMATURE_CLOSE",afterMergedStreamFinished=async(onFinished,stream)=>{try{await onFinished,abortStream(stream)}catch(error){isAbortError(error)?abortStream(stream):errorStream(stream,error)}},onInputStreamEnd=async({passThroughStream,stream,streams,ended,aborted,controller:{signal}})=>{try{await(0,import_promises.finished)(stream,{signal,cleanup:!0,readable:!0,writable:!1}),streams.has(stream)&&ended.add(stream)}catch(error){if(signal.aborted||!streams.has(stream))return;isAbortError(error)?aborted.add(stream):errorStream(passThroughStream,error)}},onInputStreamUnpipe=async({stream,streams,ended,aborted,controller:{signal}})=>{await(0,import_node_events.once)(stream,unpipeEvent,{signal}),streams.delete(stream),ended.delete(stream),aborted.delete(stream)},unpipeEvent=Symbol("unpipe"),endStream=stream=>{stream.writable&&stream.end()},abortStream=stream=>{(stream.readable||stream.writable)&&stream.destroy()},errorStream=(stream,error)=>{stream.destroyed||(stream.once("error",noop),stream.destroy(error))},noop=()=>{},updateMaxListeners=(passThroughStream,increment)=>{let maxListeners=passThroughStream.getMaxListeners();maxListeners!==0&&maxListeners!==Number.POSITIVE_INFINITY&&passThroughStream.setMaxListeners(maxListeners+increment)},PASSTHROUGH_LISTENERS_COUNT=2,PASSTHROUGH_LISTENERS_PER_STREAM=1}});var require_array=__commonJS({"../../node_modules/fast-glob/out/utils/array.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.splitWhen=exports2.flatten=void 0;function flatten(items){return items.reduce((collection,item)=>[].concat(collection,item),[])}exports2.flatten=flatten;function splitWhen(items,predicate){let result=[[]],groupIndex=0;for(let item of items)predicate(item)?(groupIndex++,result[groupIndex]=[]):result[groupIndex].push(item);return result}exports2.splitWhen=splitWhen}});var require_errno=__commonJS({"../../node_modules/fast-glob/out/utils/errno.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.isEnoentCodeError=void 0;function isEnoentCodeError(error){return error.code==="ENOENT"}exports2.isEnoentCodeError=isEnoentCodeError}});var require_fs=__commonJS({"../../node_modules/fast-glob/out/utils/fs.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.createDirentFromStats=void 0;var DirentFromStats=class{constructor(name,stats){this.name=name,this.isBlockDevice=stats.isBlockDevice.bind(stats),this.isCharacterDevice=stats.isCharacterDevice.bind(stats),this.isDirectory=stats.isDirectory.bind(stats),this.isFIFO=stats.isFIFO.bind(stats),this.isFile=stats.isFile.bind(stats),this.isSocket=stats.isSocket.bind(stats),this.isSymbolicLink=stats.isSymbolicLink.bind(stats)}};function createDirentFromStats(name,stats){return new DirentFromStats(name,stats)}exports2.createDirentFromStats=createDirentFromStats}});var require_path=__commonJS({"../../node_modules/fast-glob/out/utils/path.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.convertPosixPathToPattern=exports2.convertWindowsPathToPattern=exports2.convertPathToPattern=exports2.escapePosixPath=exports2.escapeWindowsPath=exports2.escape=exports2.removeLeadingDotSegment=exports2.makeAbsolute=exports2.unixify=void 0;var os2=require("os"),path7=require("path"),IS_WINDOWS_PLATFORM=os2.platform()==="win32",LEADING_DOT_SEGMENT_CHARACTERS_COUNT=2,POSIX_UNESCAPED_GLOB_SYMBOLS_RE=/(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g,WINDOWS_UNESCAPED_GLOB_SYMBOLS_RE=/(\\?)([()[\]{}]|^!|[!+@](?=\())/g,DOS_DEVICE_PATH_RE=/^\\\\([.?])/,WINDOWS_BACKSLASHES_RE=/\\(?![!()+@[\]{}])/g;function unixify(filepath){return filepath.replace(/\\/g,"/")}exports2.unixify=unixify;function makeAbsolute(cwd,filepath){return path7.resolve(cwd,filepath)}exports2.makeAbsolute=makeAbsolute;function removeLeadingDotSegment(entry){if(entry.charAt(0)==="."){let secondCharactery=entry.charAt(1);if(secondCharactery==="/"||secondCharactery==="\\")return entry.slice(LEADING_DOT_SEGMENT_CHARACTERS_COUNT)}return entry}exports2.removeLeadingDotSegment=removeLeadingDotSegment;exports2.escape=IS_WINDOWS_PLATFORM?escapeWindowsPath:escapePosixPath;function escapeWindowsPath(pattern){return pattern.replace(WINDOWS_UNESCAPED_GLOB_SYMBOLS_RE,"\\$2")}exports2.escapeWindowsPath=escapeWindowsPath;function escapePosixPath(pattern){return pattern.replace(POSIX_UNESCAPED_GLOB_SYMBOLS_RE,"\\$2")}exports2.escapePosixPath=escapePosixPath;exports2.convertPathToPattern=IS_WINDOWS_PLATFORM?convertWindowsPathToPattern:convertPosixPathToPattern;function convertWindowsPathToPattern(filepath){return escapeWindowsPath(filepath).replace(DOS_DEVICE_PATH_RE,"//$1").replace(WINDOWS_BACKSLASHES_RE,"/")}exports2.convertWindowsPathToPattern=convertWindowsPathToPattern;function convertPosixPathToPattern(filepath){return escapePosixPath(filepath)}exports2.convertPosixPathToPattern=convertPosixPathToPattern}});var require_is_extglob=__commonJS({"../../node_modules/is-extglob/index.js"(exports2,module2){"use strict";module2.exports=function(str){if(typeof str!="string"||str==="")return!1;for(var match;match=/(\\).|([@?!+*]\(.*\))/g.exec(str);){if(match[2])return!0;str=str.slice(match.index+match[0].length)}return!1}}});var require_is_glob=__commonJS({"../../node_modules/is-glob/index.js"(exports2,module2){"use strict";var isExtglob=require_is_extglob(),chars={"{":"}","(":")","[":"]"},strictCheck=function(str){if(str[0]==="!")return!0;for(var index=0,pipeIndex=-2,closeSquareIndex=-2,closeCurlyIndex=-2,closeParenIndex=-2,backSlashIndex=-2;index<str.length;){if(str[index]==="*"||str[index+1]==="?"&&/[\].+)]/.test(str[index])||closeSquareIndex!==-1&&str[index]==="["&&str[index+1]!=="]"&&(closeSquareIndex<index&&(closeSquareIndex=str.indexOf("]",index)),closeSquareIndex>index&&(backSlashIndex===-1||backSlashIndex>closeSquareIndex||(backSlashIndex=str.indexOf("\\",index),backSlashIndex===-1||backSlashIndex>closeSquareIndex)))||closeCurlyIndex!==-1&&str[index]==="{"&&str[index+1]!=="}"&&(closeCurlyIndex=str.indexOf("}",index),closeCurlyIndex>index&&(backSlashIndex=str.indexOf("\\",index),backSlashIndex===-1||backSlashIndex>closeCurlyIndex))||closeParenIndex!==-1&&str[index]==="("&&str[index+1]==="?"&&/[:!=]/.test(str[index+2])&&str[index+3]!==")"&&(closeParenIndex=str.indexOf(")",index),closeParenIndex>index&&(backSlashIndex=str.indexOf("\\",index),backSlashIndex===-1||backSlashIndex>closeParenIndex))||pipeIndex!==-1&&str[index]==="("&&str[index+1]!=="|"&&(pipeIndex<index&&(pipeIndex=str.indexOf("|",index)),pipeIndex!==-1&&str[pipeIndex+1]!==")"&&(closeParenIndex=str.indexOf(")",pipeIndex),closeParenIndex>pipeIndex&&(backSlashIndex=str.indexOf("\\",pipeIndex),backSlashIndex===-1||backSlashIndex>closeParenIndex))))return!0;if(str[index]==="\\"){var open=str[index+1];index+=2;var close=chars[open];if(close){var n=str.indexOf(close,index);n!==-1&&(index=n+1)}if(str[index]==="!")return!0}else index++}return!1},relaxedCheck=function(str){if(str[0]==="!")return!0;for(var index=0;index<str.length;){if(/[*?{}()[\]]/.test(str[index]))return!0;if(str[index]==="\\"){var open=str[index+1];index+=2;var close=chars[open];if(close){var n=str.indexOf(close,index);n!==-1&&(index=n+1)}if(str[index]==="!")return!0}else index++}return!1};module2.exports=function(str,options){if(typeof str!="string"||str==="")return!1;if(isExtglob(str))return!0;var check=strictCheck;return options&&options.strict===!1&&(check=relaxedCheck),check(str)}}});var require_glob_parent=__commonJS({"../../node_modules/fast-glob/node_modules/glob-parent/index.js"(exports2,module2){"use strict";var isGlob=require_is_glob(),pathPosixDirname=require("path").posix.dirname,isWin32=require("os").platform()==="win32",slash2="/",backslash=/\\/g,enclosure=/[\{\[].*[\}\]]$/,globby2=/(^|[^\\])([\{\[]|\([^\)]+$)/,escaped=/\\([\!\*\?\|\[\]\(\)\{\}])/g;module2.exports=function(str,opts){var options=Object.assign({flipBackslashes:!0},opts);options.flipBackslashes&&isWin32&&str.indexOf(slash2)<0&&(str=str.replace(backslash,slash2)),enclosure.test(str)&&(str+=slash2),str+="a";do str=pathPosixDirname(str);while(isGlob(str)||globby2.test(str));return str.replace(escaped,"$1")}}});var require_utils=__commonJS({"../../node_modules/braces/lib/utils.js"(exports2){"use strict";exports2.isInteger=num=>typeof num=="number"?Number.isInteger(num):typeof num=="string"&&num.trim()!==""?Number.isInteger(Number(num)):!1;exports2.find=(node,type)=>node.nodes.find(node2=>node2.type===type);exports2.exceedsLimit=(min,max,step=1,limit)=>limit===!1||!exports2.isInteger(min)||!exports2.isInteger(max)?!1:(Number(max)-Number(min))/Number(step)>=limit;exports2.escapeNode=(block,n=0,type)=>{let node=block.nodes[n];node&&(type&&node.type===type||node.type==="open"||node.type==="close")&&node.escaped!==!0&&(node.value="\\"+node.value,node.escaped=!0)};exports2.encloseBrace=node=>node.type!=="brace"?!1:node.commas>>0+node.ranges>>0===0?(node.invalid=!0,!0):!1;exports2.isInvalidBrace=block=>block.type!=="brace"?!1:block.invalid===!0||block.dollar?!0:block.commas>>0+block.ranges>>0===0||block.open!==!0||block.close!==!0?(block.invalid=!0,!0):!1;exports2.isOpenOrClose=node=>node.type==="open"||node.type==="close"?!0:node.open===!0||node.close===!0;exports2.reduce=nodes=>nodes.reduce((acc,node)=>(node.type==="text"&&acc.push(node.value),node.type==="range"&&(node.type="text"),acc),[]);exports2.flatten=(...args)=>{let result=[],flat=arr=>{for(let i=0;i<arr.length;i++){let ele=arr[i];if(Array.isArray(ele)){flat(ele);continue}ele!==void 0&&result.push(ele)}return result};return flat(args),result}}});var require_stringify=__commonJS({"../../node_modules/braces/lib/stringify.js"(exports2,module2){"use strict";var utils=require_utils();module2.exports=(ast,options={})=>{let stringify=(node,parent={})=>{let invalidBlock=options.escapeInvalid&&utils.isInvalidBrace(parent),invalidNode=node.invalid===!0&&options.escapeInvalid===!0,output="";if(node.value)return(invalidBlock||invalidNode)&&utils.isOpenOrClose(node)?"\\"+node.value:node.value;if(node.value)return node.value;if(node.nodes)for(let child of node.nodes)output+=stringify(child);return output};return stringify(ast)}}});var require_is_number=__commonJS({"../../node_modules/is-number/index.js"(exports2,module2){"use strict";module2.exports=function(num){return typeof num=="number"?num-num===0:typeof num=="string"&&num.trim()!==""?Number.isFinite?Number.isFinite(+num):isFinite(+num):!1}}});var require_to_regex_range=__commonJS({"../../node_modules/to-regex-range/index.js"(exports2,module2){"use strict";var isNumber=require_is_number(),toRegexRange=(min,max,options)=>{if(isNumber(min)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(max===void 0||min===max)return String(min);if(isNumber(max)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let opts={relaxZeros:!0,...options};typeof opts.strictZeros=="boolean"&&(opts.relaxZeros=opts.strictZeros===!1);let relax=String(opts.relaxZeros),shorthand=String(opts.shorthand),capture=String(opts.capture),wrap=String(opts.wrap),cacheKey=min+":"+max+"="+relax+shorthand+capture+wrap;if(toRegexRange.cache.hasOwnProperty(cacheKey))return toRegexRange.cache[cacheKey].result;let a=Math.min(min,max),b=Math.max(min,max);if(Math.abs(a-b)===1){let result=min+"|"+max;return opts.capture?`(${result})`:opts.wrap===!1?result:`(?:${result})`}let isPadded=hasPadding(min)||hasPadding(max),state={min,max,a,b},positives=[],negatives=[];if(isPadded&&(state.isPadded=isPadded,state.maxLen=String(state.max).length),a<0){let newMin=b<0?Math.abs(b):1;negatives=splitToPatterns(newMin,Math.abs(a),state,opts),a=state.a=0}return b>=0&&(positives=splitToPatterns(a,b,state,opts)),state.negatives=negatives,state.positives=positives,state.result=collatePatterns(negatives,positives,opts),opts.capture===!0?state.result=`(${state.result})`:opts.wrap!==!1&&positives.length+negatives.length>1&&(state.result=`(?:${state.result})`),toRegexRange.cache[cacheKey]=state,state.result};function collatePatterns(neg,pos,options){let onlyNegative=filterPatterns(neg,pos,"-",!1,options)||[],onlyPositive=filterPatterns(pos,neg,"",!1,options)||[],intersected=filterPatterns(neg,pos,"-?",!0,options)||[];return onlyNegative.concat(intersected).concat(onlyPositive).join("|")}function splitToRanges(min,max){let nines=1,zeros=1,stop=countNines(min,nines),stops=new Set([max]);for(;min<=stop&&stop<=max;)stops.add(stop),nines+=1,stop=countNines(min,nines);for(stop=countZeros(max+1,zeros)-1;min<stop&&stop<=max;)stops.add(stop),zeros+=1,stop=countZeros(max+1,zeros)-1;return stops=[...stops],stops.sort(compare),stops}function rangeToPattern(start,stop,options){if(start===stop)return{pattern:start,count:[],digits:0};let zipped=zip(start,stop),digits=zipped.length,pattern="",count=0;for(let i=0;i<digits;i++){let[startDigit,stopDigit]=zipped[i];startDigit===stopDigit?pattern+=startDigit:startDigit!=="0"||stopDigit!=="9"?pattern+=toCharacterClass(startDigit,stopDigit,options):count++}return count&&(pattern+=options.shorthand===!0?"\\d":"[0-9]"),{pattern,count:[count],digits}}function splitToPatterns(min,max,tok,options){let ranges=splitToRanges(min,max),tokens=[],start=min,prev;for(let i=0;i<ranges.length;i++){let max2=ranges[i],obj=rangeToPattern(String(start),String(max2),options),zeros="";if(!tok.isPadded&&prev&&prev.pattern===obj.pattern){prev.count.length>1&&prev.count.pop(),prev.count.push(obj.count[0]),prev.string=prev.pattern+toQuantifier(prev.count),start=max2+1;continue}tok.isPadded&&(zeros=padZeros(max2,tok,options)),obj.string=zeros+obj.pattern+toQuantifier(obj.count),tokens.push(obj),start=max2+1,prev=obj}return tokens}function filterPatterns(arr,comparison,prefix2,intersection,options){let result=[];for(let ele of arr){let{string}=ele;!intersection&&!contains(comparison,"string",string)&&result.push(prefix2+string),intersection&&contains(comparison,"string",string)&&result.push(prefix2+string)}return result}function zip(a,b){let arr=[];for(let i=0;i<a.length;i++)arr.push([a[i],b[i]]);return arr}function compare(a,b){return a>b?1:b>a?-1:0}function contains(arr,key,val){return arr.some(ele=>ele[key]===val)}function countNines(min,len){return Number(String(min).slice(0,-len)+"9".repeat(len))}function countZeros(integer,zeros){return integer-integer%Math.pow(10,zeros)}function toQuantifier(digits){let[start=0,stop=""]=digits;return stop||start>1?`{${start+(stop?","+stop:"")}}`:""}function toCharacterClass(a,b,options){return`[${a}${b-a===1?"":"-"}${b}]`}function hasPadding(str){return/^-?(0+)\d/.test(str)}function padZeros(value,tok,options){if(!tok.isPadded)return value;let diff=Math.abs(tok.maxLen-String(value).length),relax=options.relaxZeros!==!1;switch(diff){case 0:return"";case 1:return relax?"0?":"0";case 2:return relax?"0{0,2}":"00";default:return relax?`0{0,${diff}}`:`0{${diff}}`}}toRegexRange.cache={};toRegexRange.clearCache=()=>toRegexRange.cache={};module2.exports=toRegexRange}});var require_fill_range=__commonJS({"../../node_modules/fill-range/index.js"(exports2,module2){"use strict";var util=require("util"),toRegexRange=require_to_regex_range(),isObject=val=>val!==null&&typeof val=="object"&&!Array.isArray(val),transform=toNumber=>value=>toNumber===!0?Number(value):String(value),isValidValue=value=>typeof value=="number"||typeof value=="string"&&value!=="",isNumber=num=>Number.isInteger(+num),zeros=input=>{let value=`${input}`,index=-1;if(value[0]==="-"&&(value=value.slice(1)),value==="0")return!1;for(;value[++index]==="0";);return index>0},stringify=(start,end,options)=>typeof start=="string"||typeof end=="string"?!0:options.stringify===!0,pad=(input,maxLength,toNumber)=>{if(maxLength>0){let dash=input[0]==="-"?"-":"";dash&&(input=input.slice(1)),input=dash+input.padStart(dash?maxLength-1:maxLength,"0")}return toNumber===!1?String(input):input},toMaxLen=(input,maxLength)=>{let negative=input[0]==="-"?"-":"";for(negative&&(input=input.slice(1),maxLength--);input.length<maxLength;)input="0"+input;return negative?"-"+input:input},toSequence=(parts,options,maxLen)=>{parts.negatives.sort((a,b)=>a<b?-1:a>b?1:0),parts.positives.sort((a,b)=>a<b?-1:a>b?1:0);let prefix2=options.capture?"":"?:",positives="",negatives="",result;return parts.positives.length&&(positives=parts.positives.map(v=>toMaxLen(String(v),maxLen)).join("|")),parts.negatives.length&&(negatives=`-(${prefix2}${parts.negatives.map(v=>toMaxLen(String(v),maxLen)).join("|")})`),positives&&negatives?result=`${positives}|${negatives}`:result=positives||negatives,options.wrap?`(${prefix2}${result})`:result},toRange=(a,b,isNumbers,options)=>{if(isNumbers)return toRegexRange(a,b,{wrap:!1,...options});let start=String.fromCharCode(a);if(a===b)return start;let stop=String.fromCharCode(b);return`[${start}-${stop}]`},toRegex=(start,end,options)=>{if(Array.isArray(start)){let wrap=options.wrap===!0,prefix2=options.capture?"":"?:";return wrap?`(${prefix2}${start.join("|")})`:start.join("|")}return toRegexRange(start,end,options)},rangeError=(...args)=>new RangeError("Invalid range arguments: "+util.inspect(...args)),invalidRange=(start,end,options)=>{if(options.strictRanges===!0)throw rangeError([start,end]);return[]},invalidStep=(step,options)=>{if(options.strictRanges===!0)throw new TypeError(`Expected step "${step}" to be a number`);return[]},fillNumbers=(start,end,step=1,options={})=>{let a=Number(start),b=Number(end);if(!Number.isInteger(a)||!Number.isInteger(b)){if(options.strictRanges===!0)throw rangeError([start,end]);return[]}a===0&&(a=0),b===0&&(b=0);let descending=a>b,startString=String(start),endString=String(end),stepString=String(step);step=Math.max(Math.abs(step),1);let padded=zeros(startString)||zeros(endString)||zeros(stepString),maxLen=padded?Math.max(startString.length,endString.length,stepString.length):0,toNumber=padded===!1&&stringify(start,end,options)===!1,format=options.transform||transform(toNumber);if(options.toRegex&&step===1)return toRange(toMaxLen(start,maxLen),toMaxLen(end,maxLen),!0,options);let parts={negatives:[],positives:[]},push=num=>parts[num<0?"negatives":"positives"].push(Math.abs(num)),range=[],index=0;for(;descending?a>=b:a<=b;)options.toRegex===!0&&step>1?push(a):range.push(pad(format(a,index),maxLen,toNumber)),a=descending?a-step:a+step,index++;return options.toRegex===!0?step>1?toSequence(parts,options,maxLen):toRegex(range,null,{wrap:!1,...options}):range},fillLetters=(start,end,step=1,options={})=>{if(!isNumber(start)&&start.length>1||!isNumber(end)&&end.length>1)return invalidRange(start,end,options);let format=options.transform||(val=>String.fromCharCode(val)),a=`${start}`.charCodeAt(0),b=`${end}`.charCodeAt(0),descending=a>b,min=Math.min(a,b),max=Math.max(a,b);if(options.toRegex&&step===1)return toRange(min,max,!1,options);let range=[],index=0;for(;descending?a>=b:a<=b;)range.push(format(a,index)),a=descending?a-step:a+step,index++;return options.toRegex===!0?toRegex(range,null,{wrap:!1,options}):range},fill=(start,end,step,options={})=>{if(end==null&&isValidValue(start))return[start];if(!isValidValue(start)||!isValidValue(end))return invalidRange(start,end,options);if(typeof step=="function")return fill(start,end,1,{transform:step});if(isObject(step))return fill(start,end,0,step);let opts={...options};return opts.capture===!0&&(opts.wrap=!0),step=step||opts.step||1,isNumber(step)?isNumber(start)&&isNumber(end)?fillNumbers(start,end,step,opts):fillLetters(start,end,Math.max(Math.abs(step),1),opts):step!=null&&!isObject(step)?invalidStep(step,opts):fill(start,end,1,step)};module2.exports=fill}});var require_compile=__commonJS({"../../node_modules/braces/lib/compile.js"(exports2,module2){"use strict";var fill=require_fill_range(),utils=require_utils(),compile=(ast,options={})=>{let walk=(node,parent={})=>{let invalidBlock=utils.isInvalidBrace(parent),invalidNode=node.invalid===!0&&options.escapeInvalid===!0,invalid=invalidBlock===!0||invalidNode===!0,prefix2=options.escapeInvalid===!0?"\\":"",output="";if(node.isOpen===!0)return prefix2+node.value;if(node.isClose===!0)return console.log("node.isClose",prefix2,node.value),prefix2+node.value;if(node.type==="open")return invalid?prefix2+node.value:"(";if(node.type==="close")return invalid?prefix2+node.value:")";if(node.type==="comma")return node.prev.type==="comma"?"":invalid?node.value:"|";if(node.value)return node.value;if(node.nodes&&node.ranges>0){let args=utils.reduce(node.nodes),range=fill(...args,{...options,wrap:!1,toRegex:!0,strictZeros:!0});if(range.length!==0)return args.length>1&&range.length>1?`(${range})`:range}if(node.nodes)for(let child of node.nodes)output+=walk(child,node);return output};return walk(ast)};module2.exports=compile}});var require_expand=__commonJS({"../../node_modules/braces/lib/expand.js"(exports2,module2){"use strict";var fill=require_fill_range(),stringify=require_stringify(),utils=require_utils(),append=(queue="",stash="",enclose=!1)=>{let result=[];if(queue=[].concat(queue),stash=[].concat(stash),!stash.length)return queue;if(!queue.length)return enclose?utils.flatten(stash).map(ele=>`{${ele}}`):stash;for(let item of queue)if(Array.isArray(item))for(let value of item)result.push(append(value,stash,enclose));else for(let ele of stash)enclose===!0&&typeof ele=="string"&&(ele=`{${ele}}`),result.push(Array.isArray(ele)?append(item,ele,enclose):item+ele);return utils.flatten(result)},expand=(ast,options={})=>{let rangeLimit=options.rangeLimit===void 0?1e3:options.rangeLimit,walk=(node,parent={})=>{node.queue=[];let p=parent,q=parent.queue;for(;p.type!=="brace"&&p.type!=="root"&&p.parent;)p=p.parent,q=p.queue;if(node.invalid||node.dollar){q.push(append(q.pop(),stringify(node,options)));return}if(node.type==="brace"&&node.invalid!==!0&&node.nodes.length===2){q.push(append(q.pop(),["{}"]));return}if(node.nodes&&node.ranges>0){let args=utils.reduce(node.nodes);if(utils.exceedsLimit(...args,options.step,rangeLimit))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let range=fill(...args,options);range.length===0&&(range=stringify(node,options)),q.push(append(q.pop(),range)),node.nodes=[];return}let enclose=utils.encloseBrace(node),queue=node.queue,block=node;for(;block.type!=="brace"&&block.type!=="root"&&block.parent;)block=block.parent,queue=block.queue;for(let i=0;i<node.nodes.length;i++){let child=node.nodes[i];if(child.type==="comma"&&node.type==="brace"){i===1&&queue.push(""),queue.push("");continue}if(child.type==="close"){q.push(append(q.pop(),queue,enclose));continue}if(child.value&&child.type!=="open"){queue.push(append(queue.pop(),child.value));continue}child.nodes&&walk(child,node)}return queue};return utils.flatten(walk(ast))};module2.exports=expand}});var require_constants2=__commonJS({"../../node_modules/braces/lib/constants.js"(exports2,module2){"use strict";module2.exports={MAX_LENGTH:1e4,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:`
|
|
32
|
+
`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}}});var require_parse2=__commonJS({"../../node_modules/braces/lib/parse.js"(exports2,module2){"use strict";var stringify=require_stringify(),{MAX_LENGTH,CHAR_BACKSLASH,CHAR_BACKTICK,CHAR_COMMA,CHAR_DOT,CHAR_LEFT_PARENTHESES,CHAR_RIGHT_PARENTHESES,CHAR_LEFT_CURLY_BRACE,CHAR_RIGHT_CURLY_BRACE,CHAR_LEFT_SQUARE_BRACKET,CHAR_RIGHT_SQUARE_BRACKET,CHAR_DOUBLE_QUOTE,CHAR_SINGLE_QUOTE,CHAR_NO_BREAK_SPACE,CHAR_ZERO_WIDTH_NOBREAK_SPACE}=require_constants2(),parse2=(input,options={})=>{if(typeof input!="string")throw new TypeError("Expected a string");let opts=options||{},max=typeof opts.maxLength=="number"?Math.min(MAX_LENGTH,opts.maxLength):MAX_LENGTH;if(input.length>max)throw new SyntaxError(`Input length (${input.length}), exceeds max characters (${max})`);let ast={type:"root",input,nodes:[]},stack=[ast],block=ast,prev=ast,brackets=0,length=input.length,index=0,depth=0,value,advance=()=>input[index++],push=node=>{if(node.type==="text"&&prev.type==="dot"&&(prev.type="text"),prev&&prev.type==="text"&&node.type==="text"){prev.value+=node.value;return}return block.nodes.push(node),node.parent=block,node.prev=prev,prev=node,node};for(push({type:"bos"});index<length;)if(block=stack[stack.length-1],value=advance(),!(value===CHAR_ZERO_WIDTH_NOBREAK_SPACE||value===CHAR_NO_BREAK_SPACE)){if(value===CHAR_BACKSLASH){push({type:"text",value:(options.keepEscaping?value:"")+advance()});continue}if(value===CHAR_RIGHT_SQUARE_BRACKET){push({type:"text",value:"\\"+value});continue}if(value===CHAR_LEFT_SQUARE_BRACKET){brackets++;let next;for(;index<length&&(next=advance());){if(value+=next,next===CHAR_LEFT_SQUARE_BRACKET){brackets++;continue}if(next===CHAR_BACKSLASH){value+=advance();continue}if(next===CHAR_RIGHT_SQUARE_BRACKET&&(brackets--,brackets===0))break}push({type:"text",value});continue}if(value===CHAR_LEFT_PARENTHESES){block=push({type:"paren",nodes:[]}),stack.push(block),push({type:"text",value});continue}if(value===CHAR_RIGHT_PARENTHESES){if(block.type!=="paren"){push({type:"text",value});continue}block=stack.pop(),push({type:"text",value}),block=stack[stack.length-1];continue}if(value===CHAR_DOUBLE_QUOTE||value===CHAR_SINGLE_QUOTE||value===CHAR_BACKTICK){let open=value,next;for(options.keepQuotes!==!0&&(value="");index<length&&(next=advance());){if(next===CHAR_BACKSLASH){value+=next+advance();continue}if(next===open){options.keepQuotes===!0&&(value+=next);break}value+=next}push({type:"text",value});continue}if(value===CHAR_LEFT_CURLY_BRACE){depth++;let brace={type:"brace",open:!0,close:!1,dollar:prev.value&&prev.value.slice(-1)==="$"||block.dollar===!0,depth,commas:0,ranges:0,nodes:[]};block=push(brace),stack.push(block),push({type:"open",value});continue}if(value===CHAR_RIGHT_CURLY_BRACE){if(block.type!=="brace"){push({type:"text",value});continue}let type="close";block=stack.pop(),block.close=!0,push({type,value}),depth--,block=stack[stack.length-1];continue}if(value===CHAR_COMMA&&depth>0){if(block.ranges>0){block.ranges=0;let open=block.nodes.shift();block.nodes=[open,{type:"text",value:stringify(block)}]}push({type:"comma",value}),block.commas++;continue}if(value===CHAR_DOT&&depth>0&&block.commas===0){let siblings=block.nodes;if(depth===0||siblings.length===0){push({type:"text",value});continue}if(prev.type==="dot"){if(block.range=[],prev.value+=value,prev.type="range",block.nodes.length!==3&&block.nodes.length!==5){block.invalid=!0,block.ranges=0,prev.type="text";continue}block.ranges++,block.args=[];continue}if(prev.type==="range"){siblings.pop();let before=siblings[siblings.length-1];before.value+=prev.value+value,prev=before,block.ranges--;continue}push({type:"dot",value});continue}push({type:"text",value})}do if(block=stack.pop(),block.type!=="root"){block.nodes.forEach(node=>{node.nodes||(node.type==="open"&&(node.isOpen=!0),node.type==="close"&&(node.isClose=!0),node.nodes||(node.type="text"),node.invalid=!0)});let parent=stack[stack.length-1],index2=parent.nodes.indexOf(block);parent.nodes.splice(index2,1,...block.nodes)}while(stack.length>0);return push({type:"eos"}),ast};module2.exports=parse2}});var require_braces=__commonJS({"../../node_modules/braces/index.js"(exports2,module2){"use strict";var stringify=require_stringify(),compile=require_compile(),expand=require_expand(),parse2=require_parse2(),braces=(input,options={})=>{let output=[];if(Array.isArray(input))for(let pattern of input){let result=braces.create(pattern,options);Array.isArray(result)?output.push(...result):output.push(result)}else output=[].concat(braces.create(input,options));return options&&options.expand===!0&&options.nodupes===!0&&(output=[...new Set(output)]),output};braces.parse=(input,options={})=>parse2(input,options);braces.stringify=(input,options={})=>stringify(typeof input=="string"?braces.parse(input,options):input,options);braces.compile=(input,options={})=>(typeof input=="string"&&(input=braces.parse(input,options)),compile(input,options));braces.expand=(input,options={})=>{typeof input=="string"&&(input=braces.parse(input,options));let result=expand(input,options);return options.noempty===!0&&(result=result.filter(Boolean)),options.nodupes===!0&&(result=[...new Set(result)]),result};braces.create=(input,options={})=>input===""||input.length<3?[input]:options.expand!==!0?braces.compile(input,options):braces.expand(input,options);module2.exports=braces}});var require_constants3=__commonJS({"../../node_modules/picomatch/lib/constants.js"(exports2,module2){"use strict";var path7=require("path"),WIN_SLASH="\\\\/",WIN_NO_SLASH=`[^${WIN_SLASH}]`,DOT_LITERAL="\\.",PLUS_LITERAL="\\+",QMARK_LITERAL="\\?",SLASH_LITERAL="\\/",ONE_CHAR="(?=.)",QMARK="[^/]",END_ANCHOR=`(?:${SLASH_LITERAL}|$)`,START_ANCHOR=`(?:^|${SLASH_LITERAL})`,DOTS_SLASH=`${DOT_LITERAL}{1,2}${END_ANCHOR}`,NO_DOT=`(?!${DOT_LITERAL})`,NO_DOTS=`(?!${START_ANCHOR}${DOTS_SLASH})`,NO_DOT_SLASH=`(?!${DOT_LITERAL}{0,1}${END_ANCHOR})`,NO_DOTS_SLASH=`(?!${DOTS_SLASH})`,QMARK_NO_DOT=`[^.${SLASH_LITERAL}]`,STAR=`${QMARK}*?`,POSIX_CHARS={DOT_LITERAL,PLUS_LITERAL,QMARK_LITERAL,SLASH_LITERAL,ONE_CHAR,QMARK,END_ANCHOR,DOTS_SLASH,NO_DOT,NO_DOTS,NO_DOT_SLASH,NO_DOTS_SLASH,QMARK_NO_DOT,STAR,START_ANCHOR},WINDOWS_CHARS={...POSIX_CHARS,SLASH_LITERAL:`[${WIN_SLASH}]`,QMARK:WIN_NO_SLASH,STAR:`${WIN_NO_SLASH}*?`,DOTS_SLASH:`${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$)`,NO_DOT:`(?!${DOT_LITERAL})`,NO_DOTS:`(?!(?:^|[${WIN_SLASH}])${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`,NO_DOT_SLASH:`(?!${DOT_LITERAL}{0,1}(?:[${WIN_SLASH}]|$))`,NO_DOTS_SLASH:`(?!${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`,QMARK_NO_DOT:`[^.${WIN_SLASH}]`,START_ANCHOR:`(?:^|[${WIN_SLASH}])`,END_ANCHOR:`(?:[${WIN_SLASH}]|$)`},POSIX_REGEX_SOURCE={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};module2.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:path7.sep,extglobChars(chars){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${chars.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(win32){return win32===!0?WINDOWS_CHARS:POSIX_CHARS}}}});var require_utils2=__commonJS({"../../node_modules/picomatch/lib/utils.js"(exports2){"use strict";var path7=require("path"),win32=process.platform==="win32",{REGEX_BACKSLASH,REGEX_REMOVE_BACKSLASH,REGEX_SPECIAL_CHARS,REGEX_SPECIAL_CHARS_GLOBAL}=require_constants3();exports2.isObject=val=>val!==null&&typeof val=="object"&&!Array.isArray(val);exports2.hasRegexChars=str=>REGEX_SPECIAL_CHARS.test(str);exports2.isRegexChar=str=>str.length===1&&exports2.hasRegexChars(str);exports2.escapeRegex=str=>str.replace(REGEX_SPECIAL_CHARS_GLOBAL,"\\$1");exports2.toPosixSlashes=str=>str.replace(REGEX_BACKSLASH,"/");exports2.removeBackslashes=str=>str.replace(REGEX_REMOVE_BACKSLASH,match=>match==="\\"?"":match);exports2.supportsLookbehinds=()=>{let segs=process.version.slice(1).split(".").map(Number);return segs.length===3&&segs[0]>=9||segs[0]===8&&segs[1]>=10};exports2.isWindows=options=>options&&typeof options.windows=="boolean"?options.windows:win32===!0||path7.sep==="\\";exports2.escapeLast=(input,char,lastIdx)=>{let idx=input.lastIndexOf(char,lastIdx);return idx===-1?input:input[idx-1]==="\\"?exports2.escapeLast(input,char,idx-1):`${input.slice(0,idx)}\\${input.slice(idx)}`};exports2.removePrefix=(input,state={})=>{let output=input;return output.startsWith("./")&&(output=output.slice(2),state.prefix="./"),output};exports2.wrapOutput=(input,state={},options={})=>{let prepend=options.contains?"":"^",append=options.contains?"":"$",output=`${prepend}(?:${input})${append}`;return state.negated===!0&&(output=`(?:^(?!${output}).*$)`),output}}});var require_scan=__commonJS({"../../node_modules/picomatch/lib/scan.js"(exports2,module2){"use strict";var utils=require_utils2(),{CHAR_ASTERISK,CHAR_AT,CHAR_BACKWARD_SLASH,CHAR_COMMA,CHAR_DOT,CHAR_EXCLAMATION_MARK,CHAR_FORWARD_SLASH,CHAR_LEFT_CURLY_BRACE,CHAR_LEFT_PARENTHESES,CHAR_LEFT_SQUARE_BRACKET,CHAR_PLUS,CHAR_QUESTION_MARK,CHAR_RIGHT_CURLY_BRACE,CHAR_RIGHT_PARENTHESES,CHAR_RIGHT_SQUARE_BRACKET}=require_constants3(),isPathSeparator=code=>code===CHAR_FORWARD_SLASH||code===CHAR_BACKWARD_SLASH,depth=token=>{token.isPrefix!==!0&&(token.depth=token.isGlobstar?1/0:1)},scan=(input,options)=>{let opts=options||{},length=input.length-1,scanToEnd=opts.parts===!0||opts.scanToEnd===!0,slashes=[],tokens=[],parts=[],str=input,index=-1,start=0,lastIndex=0,isBrace=!1,isBracket=!1,isGlob=!1,isExtglob=!1,isGlobstar=!1,braceEscaped=!1,backslashes=!1,negated=!1,negatedExtglob=!1,finished2=!1,braces=0,prev,code,token={value:"",depth:0,isGlob:!1},eos=()=>index>=length,peek=()=>str.charCodeAt(index+1),advance=()=>(prev=code,str.charCodeAt(++index));for(;index<length;){code=advance();let next;if(code===CHAR_BACKWARD_SLASH){backslashes=token.backslashes=!0,code=advance(),code===CHAR_LEFT_CURLY_BRACE&&(braceEscaped=!0);continue}if(braceEscaped===!0||code===CHAR_LEFT_CURLY_BRACE){for(braces++;eos()!==!0&&(code=advance());){if(code===CHAR_BACKWARD_SLASH){backslashes=token.backslashes=!0,advance();continue}if(code===CHAR_LEFT_CURLY_BRACE){braces++;continue}if(braceEscaped!==!0&&code===CHAR_DOT&&(code=advance())===CHAR_DOT){if(isBrace=token.isBrace=!0,isGlob=token.isGlob=!0,finished2=!0,scanToEnd===!0)continue;break}if(braceEscaped!==!0&&code===CHAR_COMMA){if(isBrace=token.isBrace=!0,isGlob=token.isGlob=!0,finished2=!0,scanToEnd===!0)continue;break}if(code===CHAR_RIGHT_CURLY_BRACE&&(braces--,braces===0)){braceEscaped=!1,isBrace=token.isBrace=!0,finished2=!0;break}}if(scanToEnd===!0)continue;break}if(code===CHAR_FORWARD_SLASH){if(slashes.push(index),tokens.push(token),token={value:"",depth:0,isGlob:!1},finished2===!0)continue;if(prev===CHAR_DOT&&index===start+1){start+=2;continue}lastIndex=index+1;continue}if(opts.noext!==!0&&(code===CHAR_PLUS||code===CHAR_AT||code===CHAR_ASTERISK||code===CHAR_QUESTION_MARK||code===CHAR_EXCLAMATION_MARK)===!0&&peek()===CHAR_LEFT_PARENTHESES){if(isGlob=token.isGlob=!0,isExtglob=token.isExtglob=!0,finished2=!0,code===CHAR_EXCLAMATION_MARK&&index===start&&(negatedExtglob=!0),scanToEnd===!0){for(;eos()!==!0&&(code=advance());){if(code===CHAR_BACKWARD_SLASH){backslashes=token.backslashes=!0,code=advance();continue}if(code===CHAR_RIGHT_PARENTHESES){isGlob=token.isGlob=!0,finished2=!0;break}}continue}break}if(code===CHAR_ASTERISK){if(prev===CHAR_ASTERISK&&(isGlobstar=token.isGlobstar=!0),isGlob=token.isGlob=!0,finished2=!0,scanToEnd===!0)continue;break}if(code===CHAR_QUESTION_MARK){if(isGlob=token.isGlob=!0,finished2=!0,scanToEnd===!0)continue;break}if(code===CHAR_LEFT_SQUARE_BRACKET){for(;eos()!==!0&&(next=advance());){if(next===CHAR_BACKWARD_SLASH){backslashes=token.backslashes=!0,advance();continue}if(next===CHAR_RIGHT_SQUARE_BRACKET){isBracket=token.isBracket=!0,isGlob=token.isGlob=!0,finished2=!0;break}}if(scanToEnd===!0)continue;break}if(opts.nonegate!==!0&&code===CHAR_EXCLAMATION_MARK&&index===start){negated=token.negated=!0,start++;continue}if(opts.noparen!==!0&&code===CHAR_LEFT_PARENTHESES){if(isGlob=token.isGlob=!0,scanToEnd===!0){for(;eos()!==!0&&(code=advance());){if(code===CHAR_LEFT_PARENTHESES){backslashes=token.backslashes=!0,code=advance();continue}if(code===CHAR_RIGHT_PARENTHESES){finished2=!0;break}}continue}break}if(isGlob===!0){if(finished2=!0,scanToEnd===!0)continue;break}}opts.noext===!0&&(isExtglob=!1,isGlob=!1);let base=str,prefix2="",glob="";start>0&&(prefix2=str.slice(0,start),str=str.slice(start),lastIndex-=start),base&&isGlob===!0&&lastIndex>0?(base=str.slice(0,lastIndex),glob=str.slice(lastIndex)):isGlob===!0?(base="",glob=str):base=str,base&&base!==""&&base!=="/"&&base!==str&&isPathSeparator(base.charCodeAt(base.length-1))&&(base=base.slice(0,-1)),opts.unescape===!0&&(glob&&(glob=utils.removeBackslashes(glob)),base&&backslashes===!0&&(base=utils.removeBackslashes(base)));let state={prefix:prefix2,input,start,base,glob,isBrace,isBracket,isGlob,isExtglob,isGlobstar,negated,negatedExtglob};if(opts.tokens===!0&&(state.maxDepth=0,isPathSeparator(code)||tokens.push(token),state.tokens=tokens),opts.parts===!0||opts.tokens===!0){let prevIndex;for(let idx=0;idx<slashes.length;idx++){let n=prevIndex?prevIndex+1:start,i=slashes[idx],value=input.slice(n,i);opts.tokens&&(idx===0&&start!==0?(tokens[idx].isPrefix=!0,tokens[idx].value=prefix2):tokens[idx].value=value,depth(tokens[idx]),state.maxDepth+=tokens[idx].depth),(idx!==0||value!=="")&&parts.push(value),prevIndex=i}if(prevIndex&&prevIndex+1<input.length){let value=input.slice(prevIndex+1);parts.push(value),opts.tokens&&(tokens[tokens.length-1].value=value,depth(tokens[tokens.length-1]),state.maxDepth+=tokens[tokens.length-1].depth)}state.slashes=slashes,state.parts=parts}return state};module2.exports=scan}});var require_parse3=__commonJS({"../../node_modules/picomatch/lib/parse.js"(exports2,module2){"use strict";var constants=require_constants3(),utils=require_utils2(),{MAX_LENGTH,POSIX_REGEX_SOURCE,REGEX_NON_SPECIAL_CHARS,REGEX_SPECIAL_CHARS_BACKREF,REPLACEMENTS}=constants,expandRange=(args,options)=>{if(typeof options.expandRange=="function")return options.expandRange(...args,options);args.sort();let value=`[${args.join("-")}]`;try{new RegExp(value)}catch{return args.map(v=>utils.escapeRegex(v)).join("..")}return value},syntaxError=(type,char)=>`Missing ${type}: "${char}" - use "\\\\${char}" to match literal characters`,parse2=(input,options)=>{if(typeof input!="string")throw new TypeError("Expected a string");input=REPLACEMENTS[input]||input;let opts={...options},max=typeof opts.maxLength=="number"?Math.min(MAX_LENGTH,opts.maxLength):MAX_LENGTH,len=input.length;if(len>max)throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`);let bos={type:"bos",value:"",output:opts.prepend||""},tokens=[bos],capture=opts.capture?"":"?:",win32=utils.isWindows(options),PLATFORM_CHARS=constants.globChars(win32),EXTGLOB_CHARS=constants.extglobChars(PLATFORM_CHARS),{DOT_LITERAL,PLUS_LITERAL,SLASH_LITERAL,ONE_CHAR,DOTS_SLASH,NO_DOT,NO_DOT_SLASH,NO_DOTS_SLASH,QMARK,QMARK_NO_DOT,STAR,START_ANCHOR}=PLATFORM_CHARS,globstar=opts2=>`(${capture}(?:(?!${START_ANCHOR}${opts2.dot?DOTS_SLASH:DOT_LITERAL}).)*?)`,nodot=opts.dot?"":NO_DOT,qmarkNoDot=opts.dot?QMARK:QMARK_NO_DOT,star=opts.bash===!0?globstar(opts):STAR;opts.capture&&(star=`(${star})`),typeof opts.noext=="boolean"&&(opts.noextglob=opts.noext);let state={input,index:-1,start:0,dot:opts.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens};input=utils.removePrefix(input,state),len=input.length;let extglobs=[],braces=[],stack=[],prev=bos,value,eos=()=>state.index===len-1,peek=state.peek=(n=1)=>input[state.index+n],advance=state.advance=()=>input[++state.index]||"",remaining=()=>input.slice(state.index+1),consume=(value2="",num=0)=>{state.consumed+=value2,state.index+=num},append=token=>{state.output+=token.output!=null?token.output:token.value,consume(token.value)},negate=()=>{let count=1;for(;peek()==="!"&&(peek(2)!=="("||peek(3)==="?");)advance(),state.start++,count++;return count%2===0?!1:(state.negated=!0,state.start++,!0)},increment=type=>{state[type]++,stack.push(type)},decrement=type=>{state[type]--,stack.pop()},push=tok=>{if(prev.type==="globstar"){let isBrace=state.braces>0&&(tok.type==="comma"||tok.type==="brace"),isExtglob=tok.extglob===!0||extglobs.length&&(tok.type==="pipe"||tok.type==="paren");tok.type!=="slash"&&tok.type!=="paren"&&!isBrace&&!isExtglob&&(state.output=state.output.slice(0,-prev.output.length),prev.type="star",prev.value="*",prev.output=star,state.output+=prev.output)}if(extglobs.length&&tok.type!=="paren"&&(extglobs[extglobs.length-1].inner+=tok.value),(tok.value||tok.output)&&append(tok),prev&&prev.type==="text"&&tok.type==="text"){prev.value+=tok.value,prev.output=(prev.output||"")+tok.value;return}tok.prev=prev,tokens.push(tok),prev=tok},extglobOpen=(type,value2)=>{let token={...EXTGLOB_CHARS[value2],conditions:1,inner:""};token.prev=prev,token.parens=state.parens,token.output=state.output;let output=(opts.capture?"(":"")+token.open;increment("parens"),push({type,value:value2,output:state.output?"":ONE_CHAR}),push({type:"paren",extglob:!0,value:advance(),output}),extglobs.push(token)},extglobClose=token=>{let output=token.close+(opts.capture?")":""),rest;if(token.type==="negate"){let extglobStar=star;if(token.inner&&token.inner.length>1&&token.inner.includes("/")&&(extglobStar=globstar(opts)),(extglobStar!==star||eos()||/^\)+$/.test(remaining()))&&(output=token.close=`)$))${extglobStar}`),token.inner.includes("*")&&(rest=remaining())&&/^\.[^\\/.]+$/.test(rest)){let expression=parse2(rest,{...options,fastpaths:!1}).output;output=token.close=`)${expression})${extglobStar})`}token.prev.type==="bos"&&(state.negatedExtglob=!0)}push({type:"paren",extglob:!0,value,output}),decrement("parens")};if(opts.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(input)){let backslashes=!1,output=input.replace(REGEX_SPECIAL_CHARS_BACKREF,(m,esc,chars,first,rest,index)=>first==="\\"?(backslashes=!0,m):first==="?"?esc?esc+first+(rest?QMARK.repeat(rest.length):""):index===0?qmarkNoDot+(rest?QMARK.repeat(rest.length):""):QMARK.repeat(chars.length):first==="."?DOT_LITERAL.repeat(chars.length):first==="*"?esc?esc+first+(rest?star:""):star:esc?m:`\\${m}`);return backslashes===!0&&(opts.unescape===!0?output=output.replace(/\\/g,""):output=output.replace(/\\+/g,m=>m.length%2===0?"\\\\":m?"\\":"")),output===input&&opts.contains===!0?(state.output=input,state):(state.output=utils.wrapOutput(output,state,options),state)}for(;!eos();){if(value=advance(),value==="\0")continue;if(value==="\\"){let next=peek();if(next==="/"&&opts.bash!==!0||next==="."||next===";")continue;if(!next){value+="\\",push({type:"text",value});continue}let match=/^\\+/.exec(remaining()),slashes=0;if(match&&match[0].length>2&&(slashes=match[0].length,state.index+=slashes,slashes%2!==0&&(value+="\\")),opts.unescape===!0?value=advance():value+=advance(),state.brackets===0){push({type:"text",value});continue}}if(state.brackets>0&&(value!=="]"||prev.value==="["||prev.value==="[^")){if(opts.posix!==!1&&value===":"){let inner=prev.value.slice(1);if(inner.includes("[")&&(prev.posix=!0,inner.includes(":"))){let idx=prev.value.lastIndexOf("["),pre=prev.value.slice(0,idx),rest2=prev.value.slice(idx+2),posix=POSIX_REGEX_SOURCE[rest2];if(posix){prev.value=pre+posix,state.backtrack=!0,advance(),!bos.output&&tokens.indexOf(prev)===1&&(bos.output=ONE_CHAR);continue}}}(value==="["&&peek()!==":"||value==="-"&&peek()==="]")&&(value=`\\${value}`),value==="]"&&(prev.value==="["||prev.value==="[^")&&(value=`\\${value}`),opts.posix===!0&&value==="!"&&prev.value==="["&&(value="^"),prev.value+=value,append({value});continue}if(state.quotes===1&&value!=='"'){value=utils.escapeRegex(value),prev.value+=value,append({value});continue}if(value==='"'){state.quotes=state.quotes===1?0:1,opts.keepQuotes===!0&&push({type:"text",value});continue}if(value==="("){increment("parens"),push({type:"paren",value});continue}if(value===")"){if(state.parens===0&&opts.strictBrackets===!0)throw new SyntaxError(syntaxError("opening","("));let extglob=extglobs[extglobs.length-1];if(extglob&&state.parens===extglob.parens+1){extglobClose(extglobs.pop());continue}push({type:"paren",value,output:state.parens?")":"\\)"}),decrement("parens");continue}if(value==="["){if(opts.nobracket===!0||!remaining().includes("]")){if(opts.nobracket!==!0&&opts.strictBrackets===!0)throw new SyntaxError(syntaxError("closing","]"));value=`\\${value}`}else increment("brackets");push({type:"bracket",value});continue}if(value==="]"){if(opts.nobracket===!0||prev&&prev.type==="bracket"&&prev.value.length===1){push({type:"text",value,output:`\\${value}`});continue}if(state.brackets===0){if(opts.strictBrackets===!0)throw new SyntaxError(syntaxError("opening","["));push({type:"text",value,output:`\\${value}`});continue}decrement("brackets");let prevValue=prev.value.slice(1);if(prev.posix!==!0&&prevValue[0]==="^"&&!prevValue.includes("/")&&(value=`/${value}`),prev.value+=value,append({value}),opts.literalBrackets===!1||utils.hasRegexChars(prevValue))continue;let escaped=utils.escapeRegex(prev.value);if(state.output=state.output.slice(0,-prev.value.length),opts.literalBrackets===!0){state.output+=escaped,prev.value=escaped;continue}prev.value=`(${capture}${escaped}|${prev.value})`,state.output+=prev.value;continue}if(value==="{"&&opts.nobrace!==!0){increment("braces");let open={type:"brace",value,output:"(",outputIndex:state.output.length,tokensIndex:state.tokens.length};braces.push(open),push(open);continue}if(value==="}"){let brace=braces[braces.length-1];if(opts.nobrace===!0||!brace){push({type:"text",value,output:value});continue}let output=")";if(brace.dots===!0){let arr=tokens.slice(),range=[];for(let i=arr.length-1;i>=0&&(tokens.pop(),arr[i].type!=="brace");i--)arr[i].type!=="dots"&&range.unshift(arr[i].value);output=expandRange(range,opts),state.backtrack=!0}if(brace.comma!==!0&&brace.dots!==!0){let out=state.output.slice(0,brace.outputIndex),toks=state.tokens.slice(brace.tokensIndex);brace.value=brace.output="\\{",value=output="\\}",state.output=out;for(let t7 of toks)state.output+=t7.output||t7.value}push({type:"brace",value,output}),decrement("braces"),braces.pop();continue}if(value==="|"){extglobs.length>0&&extglobs[extglobs.length-1].conditions++,push({type:"text",value});continue}if(value===","){let output=value,brace=braces[braces.length-1];brace&&stack[stack.length-1]==="braces"&&(brace.comma=!0,output="|"),push({type:"comma",value,output});continue}if(value==="/"){if(prev.type==="dot"&&state.index===state.start+1){state.start=state.index+1,state.consumed="",state.output="",tokens.pop(),prev=bos;continue}push({type:"slash",value,output:SLASH_LITERAL});continue}if(value==="."){if(state.braces>0&&prev.type==="dot"){prev.value==="."&&(prev.output=DOT_LITERAL);let brace=braces[braces.length-1];prev.type="dots",prev.output+=value,prev.value+=value,brace.dots=!0;continue}if(state.braces+state.parens===0&&prev.type!=="bos"&&prev.type!=="slash"){push({type:"text",value,output:DOT_LITERAL});continue}push({type:"dot",value,output:DOT_LITERAL});continue}if(value==="?"){if(!(prev&&prev.value==="(")&&opts.noextglob!==!0&&peek()==="("&&peek(2)!=="?"){extglobOpen("qmark",value);continue}if(prev&&prev.type==="paren"){let next=peek(),output=value;if(next==="<"&&!utils.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(prev.value==="("&&!/[!=<:]/.test(next)||next==="<"&&!/<([!=]|\w+>)/.test(remaining()))&&(output=`\\${value}`),push({type:"text",value,output});continue}if(opts.dot!==!0&&(prev.type==="slash"||prev.type==="bos")){push({type:"qmark",value,output:QMARK_NO_DOT});continue}push({type:"qmark",value,output:QMARK});continue}if(value==="!"){if(opts.noextglob!==!0&&peek()==="("&&(peek(2)!=="?"||!/[!=<:]/.test(peek(3)))){extglobOpen("negate",value);continue}if(opts.nonegate!==!0&&state.index===0){negate();continue}}if(value==="+"){if(opts.noextglob!==!0&&peek()==="("&&peek(2)!=="?"){extglobOpen("plus",value);continue}if(prev&&prev.value==="("||opts.regex===!1){push({type:"plus",value,output:PLUS_LITERAL});continue}if(prev&&(prev.type==="bracket"||prev.type==="paren"||prev.type==="brace")||state.parens>0){push({type:"plus",value});continue}push({type:"plus",value:PLUS_LITERAL});continue}if(value==="@"){if(opts.noextglob!==!0&&peek()==="("&&peek(2)!=="?"){push({type:"at",extglob:!0,value,output:""});continue}push({type:"text",value});continue}if(value!=="*"){(value==="$"||value==="^")&&(value=`\\${value}`);let match=REGEX_NON_SPECIAL_CHARS.exec(remaining());match&&(value+=match[0],state.index+=match[0].length),push({type:"text",value});continue}if(prev&&(prev.type==="globstar"||prev.star===!0)){prev.type="star",prev.star=!0,prev.value+=value,prev.output=star,state.backtrack=!0,state.globstar=!0,consume(value);continue}let rest=remaining();if(opts.noextglob!==!0&&/^\([^?]/.test(rest)){extglobOpen("star",value);continue}if(prev.type==="star"){if(opts.noglobstar===!0){consume(value);continue}let prior=prev.prev,before=prior.prev,isStart=prior.type==="slash"||prior.type==="bos",afterStar=before&&(before.type==="star"||before.type==="globstar");if(opts.bash===!0&&(!isStart||rest[0]&&rest[0]!=="/")){push({type:"star",value,output:""});continue}let isBrace=state.braces>0&&(prior.type==="comma"||prior.type==="brace"),isExtglob=extglobs.length&&(prior.type==="pipe"||prior.type==="paren");if(!isStart&&prior.type!=="paren"&&!isBrace&&!isExtglob){push({type:"star",value,output:""});continue}for(;rest.slice(0,3)==="/**";){let after=input[state.index+4];if(after&&after!=="/")break;rest=rest.slice(3),consume("/**",3)}if(prior.type==="bos"&&eos()){prev.type="globstar",prev.value+=value,prev.output=globstar(opts),state.output=prev.output,state.globstar=!0,consume(value);continue}if(prior.type==="slash"&&prior.prev.type!=="bos"&&!afterStar&&eos()){state.output=state.output.slice(0,-(prior.output+prev.output).length),prior.output=`(?:${prior.output}`,prev.type="globstar",prev.output=globstar(opts)+(opts.strictSlashes?")":"|$)"),prev.value+=value,state.globstar=!0,state.output+=prior.output+prev.output,consume(value);continue}if(prior.type==="slash"&&prior.prev.type!=="bos"&&rest[0]==="/"){let end=rest[1]!==void 0?"|$":"";state.output=state.output.slice(0,-(prior.output+prev.output).length),prior.output=`(?:${prior.output}`,prev.type="globstar",prev.output=`${globstar(opts)}${SLASH_LITERAL}|${SLASH_LITERAL}${end})`,prev.value+=value,state.output+=prior.output+prev.output,state.globstar=!0,consume(value+advance()),push({type:"slash",value:"/",output:""});continue}if(prior.type==="bos"&&rest[0]==="/"){prev.type="globstar",prev.value+=value,prev.output=`(?:^|${SLASH_LITERAL}|${globstar(opts)}${SLASH_LITERAL})`,state.output=prev.output,state.globstar=!0,consume(value+advance()),push({type:"slash",value:"/",output:""});continue}state.output=state.output.slice(0,-prev.output.length),prev.type="globstar",prev.output=globstar(opts),prev.value+=value,state.output+=prev.output,state.globstar=!0,consume(value);continue}let token={type:"star",value,output:star};if(opts.bash===!0){token.output=".*?",(prev.type==="bos"||prev.type==="slash")&&(token.output=nodot+token.output),push(token);continue}if(prev&&(prev.type==="bracket"||prev.type==="paren")&&opts.regex===!0){token.output=value,push(token);continue}(state.index===state.start||prev.type==="slash"||prev.type==="dot")&&(prev.type==="dot"?(state.output+=NO_DOT_SLASH,prev.output+=NO_DOT_SLASH):opts.dot===!0?(state.output+=NO_DOTS_SLASH,prev.output+=NO_DOTS_SLASH):(state.output+=nodot,prev.output+=nodot),peek()!=="*"&&(state.output+=ONE_CHAR,prev.output+=ONE_CHAR)),push(token)}for(;state.brackets>0;){if(opts.strictBrackets===!0)throw new SyntaxError(syntaxError("closing","]"));state.output=utils.escapeLast(state.output,"["),decrement("brackets")}for(;state.parens>0;){if(opts.strictBrackets===!0)throw new SyntaxError(syntaxError("closing",")"));state.output=utils.escapeLast(state.output,"("),decrement("parens")}for(;state.braces>0;){if(opts.strictBrackets===!0)throw new SyntaxError(syntaxError("closing","}"));state.output=utils.escapeLast(state.output,"{"),decrement("braces")}if(opts.strictSlashes!==!0&&(prev.type==="star"||prev.type==="bracket")&&push({type:"maybe_slash",value:"",output:`${SLASH_LITERAL}?`}),state.backtrack===!0){state.output="";for(let token of state.tokens)state.output+=token.output!=null?token.output:token.value,token.suffix&&(state.output+=token.suffix)}return state};parse2.fastpaths=(input,options)=>{let opts={...options},max=typeof opts.maxLength=="number"?Math.min(MAX_LENGTH,opts.maxLength):MAX_LENGTH,len=input.length;if(len>max)throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`);input=REPLACEMENTS[input]||input;let win32=utils.isWindows(options),{DOT_LITERAL,SLASH_LITERAL,ONE_CHAR,DOTS_SLASH,NO_DOT,NO_DOTS,NO_DOTS_SLASH,STAR,START_ANCHOR}=constants.globChars(win32),nodot=opts.dot?NO_DOTS:NO_DOT,slashDot=opts.dot?NO_DOTS_SLASH:NO_DOT,capture=opts.capture?"":"?:",state={negated:!1,prefix:""},star=opts.bash===!0?".*?":STAR;opts.capture&&(star=`(${star})`);let globstar=opts2=>opts2.noglobstar===!0?star:`(${capture}(?:(?!${START_ANCHOR}${opts2.dot?DOTS_SLASH:DOT_LITERAL}).)*?)`,create=str=>{switch(str){case"*":return`${nodot}${ONE_CHAR}${star}`;case".*":return`${DOT_LITERAL}${ONE_CHAR}${star}`;case"*.*":return`${nodot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`;case"*/*":return`${nodot}${star}${SLASH_LITERAL}${ONE_CHAR}${slashDot}${star}`;case"**":return nodot+globstar(opts);case"**/*":return`(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${ONE_CHAR}${star}`;case"**/*.*":return`(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`;case"**/.*":return`(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${DOT_LITERAL}${ONE_CHAR}${star}`;default:{let match=/^(.*?)\.(\w+)$/.exec(str);if(!match)return;let source2=create(match[1]);return source2?source2+DOT_LITERAL+match[2]:void 0}}},output=utils.removePrefix(input,state),source=create(output);return source&&opts.strictSlashes!==!0&&(source+=`${SLASH_LITERAL}?`),source};module2.exports=parse2}});var require_picomatch=__commonJS({"../../node_modules/picomatch/lib/picomatch.js"(exports2,module2){"use strict";var path7=require("path"),scan=require_scan(),parse2=require_parse3(),utils=require_utils2(),constants=require_constants3(),isObject=val=>val&&typeof val=="object"&&!Array.isArray(val),picomatch=(glob,options,returnState=!1)=>{if(Array.isArray(glob)){let fns=glob.map(input=>picomatch(input,options,returnState));return str=>{for(let isMatch of fns){let state2=isMatch(str);if(state2)return state2}return!1}}let isState=isObject(glob)&&glob.tokens&&glob.input;if(glob===""||typeof glob!="string"&&!isState)throw new TypeError("Expected pattern to be a non-empty string");let opts=options||{},posix=utils.isWindows(options),regex2=isState?picomatch.compileRe(glob,options):picomatch.makeRe(glob,options,!1,!0),state=regex2.state;delete regex2.state;let isIgnored=()=>!1;if(opts.ignore){let ignoreOpts={...options,ignore:null,onMatch:null,onResult:null};isIgnored=picomatch(opts.ignore,ignoreOpts,returnState)}let matcher=(input,returnObject=!1)=>{let{isMatch,match,output}=picomatch.test(input,regex2,options,{glob,posix}),result={glob,state,regex:regex2,posix,input,output,match,isMatch};return typeof opts.onResult=="function"&&opts.onResult(result),isMatch===!1?(result.isMatch=!1,returnObject?result:!1):isIgnored(input)?(typeof opts.onIgnore=="function"&&opts.onIgnore(result),result.isMatch=!1,returnObject?result:!1):(typeof opts.onMatch=="function"&&opts.onMatch(result),returnObject?result:!0)};return returnState&&(matcher.state=state),matcher};picomatch.test=(input,regex2,options,{glob,posix}={})=>{if(typeof input!="string")throw new TypeError("Expected input to be a string");if(input==="")return{isMatch:!1,output:""};let opts=options||{},format=opts.format||(posix?utils.toPosixSlashes:null),match=input===glob,output=match&&format?format(input):input;return match===!1&&(output=format?format(input):input,match=output===glob),(match===!1||opts.capture===!0)&&(opts.matchBase===!0||opts.basename===!0?match=picomatch.matchBase(input,regex2,options,posix):match=regex2.exec(output)),{isMatch:!!match,match,output}};picomatch.matchBase=(input,glob,options,posix=utils.isWindows(options))=>(glob instanceof RegExp?glob:picomatch.makeRe(glob,options)).test(path7.basename(input));picomatch.isMatch=(str,patterns,options)=>picomatch(patterns,options)(str);picomatch.parse=(pattern,options)=>Array.isArray(pattern)?pattern.map(p=>picomatch.parse(p,options)):parse2(pattern,{...options,fastpaths:!1});picomatch.scan=(input,options)=>scan(input,options);picomatch.compileRe=(state,options,returnOutput=!1,returnState=!1)=>{if(returnOutput===!0)return state.output;let opts=options||{},prepend=opts.contains?"":"^",append=opts.contains?"":"$",source=`${prepend}(?:${state.output})${append}`;state&&state.negated===!0&&(source=`^(?!${source}).*$`);let regex2=picomatch.toRegex(source,options);return returnState===!0&&(regex2.state=state),regex2};picomatch.makeRe=(input,options={},returnOutput=!1,returnState=!1)=>{if(!input||typeof input!="string")throw new TypeError("Expected a non-empty string");let parsed={negated:!1,fastpaths:!0};return options.fastpaths!==!1&&(input[0]==="."||input[0]==="*")&&(parsed.output=parse2.fastpaths(input,options)),parsed.output||(parsed=parse2(input,options)),picomatch.compileRe(parsed,options,returnOutput,returnState)};picomatch.toRegex=(source,options)=>{try{let opts=options||{};return new RegExp(source,opts.flags||(opts.nocase?"i":""))}catch(err){if(options&&options.debug===!0)throw err;return/$^/}};picomatch.constants=constants;module2.exports=picomatch}});var require_picomatch2=__commonJS({"../../node_modules/picomatch/index.js"(exports2,module2){"use strict";module2.exports=require_picomatch()}});var require_micromatch=__commonJS({"../../node_modules/micromatch/index.js"(exports2,module2){"use strict";var util=require("util"),braces=require_braces(),picomatch=require_picomatch2(),utils=require_utils2(),isEmptyString=v=>v===""||v==="./",hasBraces=v=>{let index=v.indexOf("{");return index>-1&&v.indexOf("}",index)>-1},micromatch=(list,patterns,options)=>{patterns=[].concat(patterns),list=[].concat(list);let omit=new Set,keep=new Set,items=new Set,negatives=0,onResult=state=>{items.add(state.output),options&&options.onResult&&options.onResult(state)};for(let i=0;i<patterns.length;i++){let isMatch=picomatch(String(patterns[i]),{...options,onResult},!0),negated=isMatch.state.negated||isMatch.state.negatedExtglob;negated&&negatives++;for(let item of list){let matched=isMatch(item,!0);(negated?!matched.isMatch:matched.isMatch)&&(negated?omit.add(matched.output):(omit.delete(matched.output),keep.add(matched.output)))}}let matches=(negatives===patterns.length?[...items]:[...keep]).filter(item=>!omit.has(item));if(options&&matches.length===0){if(options.failglob===!0)throw new Error(`No matches found for "${patterns.join(", ")}"`);if(options.nonull===!0||options.nullglob===!0)return options.unescape?patterns.map(p=>p.replace(/\\/g,"")):patterns}return matches};micromatch.match=micromatch;micromatch.matcher=(pattern,options)=>picomatch(pattern,options);micromatch.isMatch=(str,patterns,options)=>picomatch(patterns,options)(str);micromatch.any=micromatch.isMatch;micromatch.not=(list,patterns,options={})=>{patterns=[].concat(patterns).map(String);let result=new Set,items=[],onResult=state=>{options.onResult&&options.onResult(state),items.push(state.output)},matches=new Set(micromatch(list,patterns,{...options,onResult}));for(let item of items)matches.has(item)||result.add(item);return[...result]};micromatch.contains=(str,pattern,options)=>{if(typeof str!="string")throw new TypeError(`Expected a string: "${util.inspect(str)}"`);if(Array.isArray(pattern))return pattern.some(p=>micromatch.contains(str,p,options));if(typeof pattern=="string"){if(isEmptyString(str)||isEmptyString(pattern))return!1;if(str.includes(pattern)||str.startsWith("./")&&str.slice(2).includes(pattern))return!0}return micromatch.isMatch(str,pattern,{...options,contains:!0})};micromatch.matchKeys=(obj,patterns,options)=>{if(!utils.isObject(obj))throw new TypeError("Expected the first argument to be an object");let keys=micromatch(Object.keys(obj),patterns,options),res={};for(let key of keys)res[key]=obj[key];return res};micromatch.some=(list,patterns,options)=>{let items=[].concat(list);for(let pattern of[].concat(patterns)){let isMatch=picomatch(String(pattern),options);if(items.some(item=>isMatch(item)))return!0}return!1};micromatch.every=(list,patterns,options)=>{let items=[].concat(list);for(let pattern of[].concat(patterns)){let isMatch=picomatch(String(pattern),options);if(!items.every(item=>isMatch(item)))return!1}return!0};micromatch.all=(str,patterns,options)=>{if(typeof str!="string")throw new TypeError(`Expected a string: "${util.inspect(str)}"`);return[].concat(patterns).every(p=>picomatch(p,options)(str))};micromatch.capture=(glob,input,options)=>{let posix=utils.isWindows(options),match=picomatch.makeRe(String(glob),{...options,capture:!0}).exec(posix?utils.toPosixSlashes(input):input);if(match)return match.slice(1).map(v=>v===void 0?"":v)};micromatch.makeRe=(...args)=>picomatch.makeRe(...args);micromatch.scan=(...args)=>picomatch.scan(...args);micromatch.parse=(patterns,options)=>{let res=[];for(let pattern of[].concat(patterns||[]))for(let str of braces(String(pattern),options))res.push(picomatch.parse(str,options));return res};micromatch.braces=(pattern,options)=>{if(typeof pattern!="string")throw new TypeError("Expected a string");return options&&options.nobrace===!0||!hasBraces(pattern)?[pattern]:braces(pattern,options)};micromatch.braceExpand=(pattern,options)=>{if(typeof pattern!="string")throw new TypeError("Expected a string");return micromatch.braces(pattern,{...options,expand:!0})};micromatch.hasBraces=hasBraces;module2.exports=micromatch}});var require_pattern=__commonJS({"../../node_modules/fast-glob/out/utils/pattern.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.isAbsolute=exports2.partitionAbsoluteAndRelative=exports2.removeDuplicateSlashes=exports2.matchAny=exports2.convertPatternsToRe=exports2.makeRe=exports2.getPatternParts=exports2.expandBraceExpansion=exports2.expandPatternsWithBraceExpansion=exports2.isAffectDepthOfReadingPattern=exports2.endsWithSlashGlobStar=exports2.hasGlobStar=exports2.getBaseDirectory=exports2.isPatternRelatedToParentDirectory=exports2.getPatternsOutsideCurrentDirectory=exports2.getPatternsInsideCurrentDirectory=exports2.getPositivePatterns=exports2.getNegativePatterns=exports2.isPositivePattern=exports2.isNegativePattern=exports2.convertToNegativePattern=exports2.convertToPositivePattern=exports2.isDynamicPattern=exports2.isStaticPattern=void 0;var path7=require("path"),globParent=require_glob_parent(),micromatch=require_micromatch(),GLOBSTAR="**",ESCAPE_SYMBOL="\\",COMMON_GLOB_SYMBOLS_RE=/[*?]|^!/,REGEX_CHARACTER_CLASS_SYMBOLS_RE=/\[[^[]*]/,REGEX_GROUP_SYMBOLS_RE=/(?:^|[^!*+?@])\([^(]*\|[^|]*\)/,GLOB_EXTENSION_SYMBOLS_RE=/[!*+?@]\([^(]*\)/,BRACE_EXPANSION_SEPARATORS_RE=/,|\.\./,DOUBLE_SLASH_RE=/(?!^)\/{2,}/g;function isStaticPattern(pattern,options={}){return!isDynamicPattern2(pattern,options)}exports2.isStaticPattern=isStaticPattern;function isDynamicPattern2(pattern,options={}){return pattern===""?!1:!!(options.caseSensitiveMatch===!1||pattern.includes(ESCAPE_SYMBOL)||COMMON_GLOB_SYMBOLS_RE.test(pattern)||REGEX_CHARACTER_CLASS_SYMBOLS_RE.test(pattern)||REGEX_GROUP_SYMBOLS_RE.test(pattern)||options.extglob!==!1&&GLOB_EXTENSION_SYMBOLS_RE.test(pattern)||options.braceExpansion!==!1&&hasBraceExpansion(pattern))}exports2.isDynamicPattern=isDynamicPattern2;function hasBraceExpansion(pattern){let openingBraceIndex=pattern.indexOf("{");if(openingBraceIndex===-1)return!1;let closingBraceIndex=pattern.indexOf("}",openingBraceIndex+1);if(closingBraceIndex===-1)return!1;let braceContent=pattern.slice(openingBraceIndex,closingBraceIndex);return BRACE_EXPANSION_SEPARATORS_RE.test(braceContent)}function convertToPositivePattern(pattern){return isNegativePattern2(pattern)?pattern.slice(1):pattern}exports2.convertToPositivePattern=convertToPositivePattern;function convertToNegativePattern(pattern){return"!"+pattern}exports2.convertToNegativePattern=convertToNegativePattern;function isNegativePattern2(pattern){return pattern.startsWith("!")&&pattern[1]!=="("}exports2.isNegativePattern=isNegativePattern2;function isPositivePattern(pattern){return!isNegativePattern2(pattern)}exports2.isPositivePattern=isPositivePattern;function getNegativePatterns(patterns){return patterns.filter(isNegativePattern2)}exports2.getNegativePatterns=getNegativePatterns;function getPositivePatterns(patterns){return patterns.filter(isPositivePattern)}exports2.getPositivePatterns=getPositivePatterns;function getPatternsInsideCurrentDirectory(patterns){return patterns.filter(pattern=>!isPatternRelatedToParentDirectory(pattern))}exports2.getPatternsInsideCurrentDirectory=getPatternsInsideCurrentDirectory;function getPatternsOutsideCurrentDirectory(patterns){return patterns.filter(isPatternRelatedToParentDirectory)}exports2.getPatternsOutsideCurrentDirectory=getPatternsOutsideCurrentDirectory;function isPatternRelatedToParentDirectory(pattern){return pattern.startsWith("..")||pattern.startsWith("./..")}exports2.isPatternRelatedToParentDirectory=isPatternRelatedToParentDirectory;function getBaseDirectory(pattern){return globParent(pattern,{flipBackslashes:!1})}exports2.getBaseDirectory=getBaseDirectory;function hasGlobStar(pattern){return pattern.includes(GLOBSTAR)}exports2.hasGlobStar=hasGlobStar;function endsWithSlashGlobStar(pattern){return pattern.endsWith("/"+GLOBSTAR)}exports2.endsWithSlashGlobStar=endsWithSlashGlobStar;function isAffectDepthOfReadingPattern(pattern){let basename2=path7.basename(pattern);return endsWithSlashGlobStar(pattern)||isStaticPattern(basename2)}exports2.isAffectDepthOfReadingPattern=isAffectDepthOfReadingPattern;function expandPatternsWithBraceExpansion(patterns){return patterns.reduce((collection,pattern)=>collection.concat(expandBraceExpansion(pattern)),[])}exports2.expandPatternsWithBraceExpansion=expandPatternsWithBraceExpansion;function expandBraceExpansion(pattern){let patterns=micromatch.braces(pattern,{expand:!0,nodupes:!0,keepEscaping:!0});return patterns.sort((a,b)=>a.length-b.length),patterns.filter(pattern2=>pattern2!=="")}exports2.expandBraceExpansion=expandBraceExpansion;function getPatternParts(pattern,options){let{parts}=micromatch.scan(pattern,Object.assign(Object.assign({},options),{parts:!0}));return parts.length===0&&(parts=[pattern]),parts[0].startsWith("/")&&(parts[0]=parts[0].slice(1),parts.unshift("")),parts}exports2.getPatternParts=getPatternParts;function makeRe(pattern,options){return micromatch.makeRe(pattern,options)}exports2.makeRe=makeRe;function convertPatternsToRe(patterns,options){return patterns.map(pattern=>makeRe(pattern,options))}exports2.convertPatternsToRe=convertPatternsToRe;function matchAny(entry,patternsRe){return patternsRe.some(patternRe=>patternRe.test(entry))}exports2.matchAny=matchAny;function removeDuplicateSlashes(pattern){return pattern.replace(DOUBLE_SLASH_RE,"/")}exports2.removeDuplicateSlashes=removeDuplicateSlashes;function partitionAbsoluteAndRelative(patterns){let absolute=[],relative=[];for(let pattern of patterns)isAbsolute4(pattern)?absolute.push(pattern):relative.push(pattern);return[absolute,relative]}exports2.partitionAbsoluteAndRelative=partitionAbsoluteAndRelative;function isAbsolute4(pattern){return path7.isAbsolute(pattern)}exports2.isAbsolute=isAbsolute4}});var require_merge2=__commonJS({"../../node_modules/merge2/index.js"(exports2,module2){"use strict";var Stream=require("stream"),PassThrough=Stream.PassThrough,slice=Array.prototype.slice;module2.exports=merge2;function merge2(){let streamsQueue=[],args=slice.call(arguments),merging=!1,options=args[args.length-1];options&&!Array.isArray(options)&&options.pipe==null?args.pop():options={};let doEnd=options.end!==!1,doPipeError=options.pipeError===!0;options.objectMode==null&&(options.objectMode=!0),options.highWaterMark==null&&(options.highWaterMark=64*1024);let mergedStream=PassThrough(options);function addStream(){for(let i=0,len=arguments.length;i<len;i++)streamsQueue.push(pauseStreams(arguments[i],options));return mergeStream(),this}function mergeStream(){if(merging)return;merging=!0;let streams=streamsQueue.shift();if(!streams){process.nextTick(endStream2);return}Array.isArray(streams)||(streams=[streams]);let pipesCount=streams.length+1;function next(){--pipesCount>0||(merging=!1,mergeStream())}function pipe(stream){function onend(){stream.removeListener("merge2UnpipeEnd",onend),stream.removeListener("end",onend),doPipeError&&stream.removeListener("error",onerror),next()}function onerror(err){mergedStream.emit("error",err)}if(stream._readableState.endEmitted)return next();stream.on("merge2UnpipeEnd",onend),stream.on("end",onend),doPipeError&&stream.on("error",onerror),stream.pipe(mergedStream,{end:!1}),stream.resume()}for(let i=0;i<streams.length;i++)pipe(streams[i]);next()}function endStream2(){merging=!1,mergedStream.emit("queueDrain"),doEnd&&mergedStream.end()}return mergedStream.setMaxListeners(0),mergedStream.add=addStream,mergedStream.on("unpipe",function(stream){stream.emit("merge2UnpipeEnd")}),args.length&&addStream.apply(null,args),mergedStream}function pauseStreams(streams,options){if(Array.isArray(streams))for(let i=0,len=streams.length;i<len;i++)streams[i]=pauseStreams(streams[i],options);else{if(!streams._readableState&&streams.pipe&&(streams=streams.pipe(PassThrough(options))),!streams._readableState||!streams.pause||!streams.pipe)throw new Error("Only readable stream can be merged.");streams.pause()}return streams}}});var require_stream=__commonJS({"../../node_modules/fast-glob/out/utils/stream.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.merge=void 0;var merge2=require_merge2();function merge(streams){let mergedStream=merge2(streams);return streams.forEach(stream=>{stream.once("error",error=>mergedStream.emit("error",error))}),mergedStream.once("close",()=>propagateCloseEventToSources(streams)),mergedStream.once("end",()=>propagateCloseEventToSources(streams)),mergedStream}exports2.merge=merge;function propagateCloseEventToSources(streams){streams.forEach(stream=>stream.emit("close"))}}});var require_string=__commonJS({"../../node_modules/fast-glob/out/utils/string.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.isEmpty=exports2.isString=void 0;function isString(input){return typeof input=="string"}exports2.isString=isString;function isEmpty(input){return input===""}exports2.isEmpty=isEmpty}});var require_utils3=__commonJS({"../../node_modules/fast-glob/out/utils/index.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.string=exports2.stream=exports2.pattern=exports2.path=exports2.fs=exports2.errno=exports2.array=void 0;var array2=require_array();exports2.array=array2;var errno=require_errno();exports2.errno=errno;var fs7=require_fs();exports2.fs=fs7;var path7=require_path();exports2.path=path7;var pattern=require_pattern();exports2.pattern=pattern;var stream=require_stream();exports2.stream=stream;var string=require_string();exports2.string=string}});var require_tasks=__commonJS({"../../node_modules/fast-glob/out/managers/tasks.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.convertPatternGroupToTask=exports2.convertPatternGroupsToTasks=exports2.groupPatternsByBaseDirectory=exports2.getNegativePatternsAsPositive=exports2.getPositivePatterns=exports2.convertPatternsToTasks=exports2.generate=void 0;var utils=require_utils3();function generate(input,settings){let patterns=processPatterns(input,settings),ignore=processPatterns(settings.ignore,settings),positivePatterns=getPositivePatterns(patterns),negativePatterns=getNegativePatternsAsPositive(patterns,ignore),staticPatterns=positivePatterns.filter(pattern=>utils.pattern.isStaticPattern(pattern,settings)),dynamicPatterns=positivePatterns.filter(pattern=>utils.pattern.isDynamicPattern(pattern,settings)),staticTasks=convertPatternsToTasks(staticPatterns,negativePatterns,!1),dynamicTasks=convertPatternsToTasks(dynamicPatterns,negativePatterns,!0);return staticTasks.concat(dynamicTasks)}exports2.generate=generate;function processPatterns(input,settings){let patterns=input;return settings.braceExpansion&&(patterns=utils.pattern.expandPatternsWithBraceExpansion(patterns)),settings.baseNameMatch&&(patterns=patterns.map(pattern=>pattern.includes("/")?pattern:`**/${pattern}`)),patterns.map(pattern=>utils.pattern.removeDuplicateSlashes(pattern))}function convertPatternsToTasks(positive,negative,dynamic){let tasks=[],patternsOutsideCurrentDirectory=utils.pattern.getPatternsOutsideCurrentDirectory(positive),patternsInsideCurrentDirectory=utils.pattern.getPatternsInsideCurrentDirectory(positive),outsideCurrentDirectoryGroup=groupPatternsByBaseDirectory(patternsOutsideCurrentDirectory),insideCurrentDirectoryGroup=groupPatternsByBaseDirectory(patternsInsideCurrentDirectory);return tasks.push(...convertPatternGroupsToTasks(outsideCurrentDirectoryGroup,negative,dynamic)),"."in insideCurrentDirectoryGroup?tasks.push(convertPatternGroupToTask(".",patternsInsideCurrentDirectory,negative,dynamic)):tasks.push(...convertPatternGroupsToTasks(insideCurrentDirectoryGroup,negative,dynamic)),tasks}exports2.convertPatternsToTasks=convertPatternsToTasks;function getPositivePatterns(patterns){return utils.pattern.getPositivePatterns(patterns)}exports2.getPositivePatterns=getPositivePatterns;function getNegativePatternsAsPositive(patterns,ignore){return utils.pattern.getNegativePatterns(patterns).concat(ignore).map(utils.pattern.convertToPositivePattern)}exports2.getNegativePatternsAsPositive=getNegativePatternsAsPositive;function groupPatternsByBaseDirectory(patterns){let group={};return patterns.reduce((collection,pattern)=>{let base=utils.pattern.getBaseDirectory(pattern);return base in collection?collection[base].push(pattern):collection[base]=[pattern],collection},group)}exports2.groupPatternsByBaseDirectory=groupPatternsByBaseDirectory;function convertPatternGroupsToTasks(positive,negative,dynamic){return Object.keys(positive).map(base=>convertPatternGroupToTask(base,positive[base],negative,dynamic))}exports2.convertPatternGroupsToTasks=convertPatternGroupsToTasks;function convertPatternGroupToTask(base,positive,negative,dynamic){return{dynamic,positive,negative,base,patterns:[].concat(positive,negative.map(utils.pattern.convertToNegativePattern))}}exports2.convertPatternGroupToTask=convertPatternGroupToTask}});var require_async=__commonJS({"../../node_modules/@nodelib/fs.stat/out/providers/async.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.read=void 0;function read(path7,settings,callback){settings.fs.lstat(path7,(lstatError,lstat)=>{if(lstatError!==null){callFailureCallback(callback,lstatError);return}if(!lstat.isSymbolicLink()||!settings.followSymbolicLink){callSuccessCallback(callback,lstat);return}settings.fs.stat(path7,(statError,stat)=>{if(statError!==null){if(settings.throwErrorOnBrokenSymbolicLink){callFailureCallback(callback,statError);return}callSuccessCallback(callback,lstat);return}settings.markSymbolicLink&&(stat.isSymbolicLink=()=>!0),callSuccessCallback(callback,stat)})})}exports2.read=read;function callFailureCallback(callback,error){callback(error)}function callSuccessCallback(callback,result){callback(null,result)}}});var require_sync=__commonJS({"../../node_modules/@nodelib/fs.stat/out/providers/sync.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.read=void 0;function read(path7,settings){let lstat=settings.fs.lstatSync(path7);if(!lstat.isSymbolicLink()||!settings.followSymbolicLink)return lstat;try{let stat=settings.fs.statSync(path7);return settings.markSymbolicLink&&(stat.isSymbolicLink=()=>!0),stat}catch(error){if(!settings.throwErrorOnBrokenSymbolicLink)return lstat;throw error}}exports2.read=read}});var require_fs2=__commonJS({"../../node_modules/@nodelib/fs.stat/out/adapters/fs.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.createFileSystemAdapter=exports2.FILE_SYSTEM_ADAPTER=void 0;var fs7=require("fs");exports2.FILE_SYSTEM_ADAPTER={lstat:fs7.lstat,stat:fs7.stat,lstatSync:fs7.lstatSync,statSync:fs7.statSync};function createFileSystemAdapter(fsMethods){return fsMethods===void 0?exports2.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},exports2.FILE_SYSTEM_ADAPTER),fsMethods)}exports2.createFileSystemAdapter=createFileSystemAdapter}});var require_settings=__commonJS({"../../node_modules/@nodelib/fs.stat/out/settings.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var fs7=require_fs2(),Settings=class{constructor(_options={}){this._options=_options,this.followSymbolicLink=this._getValue(this._options.followSymbolicLink,!0),this.fs=fs7.createFileSystemAdapter(this._options.fs),this.markSymbolicLink=this._getValue(this._options.markSymbolicLink,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0)}_getValue(option,value){return option??value}};exports2.default=Settings}});var require_out=__commonJS({"../../node_modules/@nodelib/fs.stat/out/index.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.statSync=exports2.stat=exports2.Settings=void 0;var async=require_async(),sync=require_sync(),settings_1=require_settings();exports2.Settings=settings_1.default;function stat(path7,optionsOrSettingsOrCallback,callback){if(typeof optionsOrSettingsOrCallback=="function"){async.read(path7,getSettings(),optionsOrSettingsOrCallback);return}async.read(path7,getSettings(optionsOrSettingsOrCallback),callback)}exports2.stat=stat;function statSync(path7,optionsOrSettings){let settings=getSettings(optionsOrSettings);return sync.read(path7,settings)}exports2.statSync=statSync;function getSettings(settingsOrOptions={}){return settingsOrOptions instanceof settings_1.default?settingsOrOptions:new settings_1.default(settingsOrOptions)}}});var require_queue_microtask=__commonJS({"../../node_modules/queue-microtask/index.js"(exports2,module2){"use strict";var promise;module2.exports=typeof queueMicrotask=="function"?queueMicrotask.bind(typeof window<"u"?window:global):cb=>(promise||(promise=Promise.resolve())).then(cb).catch(err=>setTimeout(()=>{throw err},0))}});var require_run_parallel=__commonJS({"../../node_modules/run-parallel/index.js"(exports2,module2){"use strict";module2.exports=runParallel;var queueMicrotask2=require_queue_microtask();function runParallel(tasks,cb){let results,pending,keys,isSync=!0;Array.isArray(tasks)?(results=[],pending=tasks.length):(keys=Object.keys(tasks),results={},pending=keys.length);function done(err){function end(){cb&&cb(err,results),cb=null}isSync?queueMicrotask2(end):end()}function each(i,err,result){results[i]=result,(--pending===0||err)&&done(err)}pending?keys?keys.forEach(function(key){tasks[key](function(err,result){each(key,err,result)})}):tasks.forEach(function(task,i){task(function(err,result){each(i,err,result)})}):done(null),isSync=!1}}});var require_constants4=__commonJS({"../../node_modules/@nodelib/fs.scandir/out/constants.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.IS_SUPPORT_READDIR_WITH_FILE_TYPES=void 0;var NODE_PROCESS_VERSION_PARTS=process.versions.node.split(".");if(NODE_PROCESS_VERSION_PARTS[0]===void 0||NODE_PROCESS_VERSION_PARTS[1]===void 0)throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`);var MAJOR_VERSION=Number.parseInt(NODE_PROCESS_VERSION_PARTS[0],10),MINOR_VERSION=Number.parseInt(NODE_PROCESS_VERSION_PARTS[1],10),SUPPORTED_MAJOR_VERSION=10,SUPPORTED_MINOR_VERSION=10,IS_MATCHED_BY_MAJOR=MAJOR_VERSION>SUPPORTED_MAJOR_VERSION,IS_MATCHED_BY_MAJOR_AND_MINOR=MAJOR_VERSION===SUPPORTED_MAJOR_VERSION&&MINOR_VERSION>=SUPPORTED_MINOR_VERSION;exports2.IS_SUPPORT_READDIR_WITH_FILE_TYPES=IS_MATCHED_BY_MAJOR||IS_MATCHED_BY_MAJOR_AND_MINOR}});var require_fs3=__commonJS({"../../node_modules/@nodelib/fs.scandir/out/utils/fs.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.createDirentFromStats=void 0;var DirentFromStats=class{constructor(name,stats){this.name=name,this.isBlockDevice=stats.isBlockDevice.bind(stats),this.isCharacterDevice=stats.isCharacterDevice.bind(stats),this.isDirectory=stats.isDirectory.bind(stats),this.isFIFO=stats.isFIFO.bind(stats),this.isFile=stats.isFile.bind(stats),this.isSocket=stats.isSocket.bind(stats),this.isSymbolicLink=stats.isSymbolicLink.bind(stats)}};function createDirentFromStats(name,stats){return new DirentFromStats(name,stats)}exports2.createDirentFromStats=createDirentFromStats}});var require_utils4=__commonJS({"../../node_modules/@nodelib/fs.scandir/out/utils/index.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.fs=void 0;var fs7=require_fs3();exports2.fs=fs7}});var require_common=__commonJS({"../../node_modules/@nodelib/fs.scandir/out/providers/common.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.joinPathSegments=void 0;function joinPathSegments(a,b,separator){return a.endsWith(separator)?a+b:a+separator+b}exports2.joinPathSegments=joinPathSegments}});var require_async2=__commonJS({"../../node_modules/@nodelib/fs.scandir/out/providers/async.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.readdir=exports2.readdirWithFileTypes=exports2.read=void 0;var fsStat=require_out(),rpl=require_run_parallel(),constants_1=require_constants4(),utils=require_utils4(),common=require_common();function read(directory,settings,callback){if(!settings.stats&&constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES){readdirWithFileTypes(directory,settings,callback);return}readdir2(directory,settings,callback)}exports2.read=read;function readdirWithFileTypes(directory,settings,callback){settings.fs.readdir(directory,{withFileTypes:!0},(readdirError,dirents)=>{if(readdirError!==null){callFailureCallback(callback,readdirError);return}let entries=dirents.map(dirent=>({dirent,name:dirent.name,path:common.joinPathSegments(directory,dirent.name,settings.pathSegmentSeparator)}));if(!settings.followSymbolicLinks){callSuccessCallback(callback,entries);return}let tasks=entries.map(entry=>makeRplTaskEntry(entry,settings));rpl(tasks,(rplError,rplEntries)=>{if(rplError!==null){callFailureCallback(callback,rplError);return}callSuccessCallback(callback,rplEntries)})})}exports2.readdirWithFileTypes=readdirWithFileTypes;function makeRplTaskEntry(entry,settings){return done=>{if(!entry.dirent.isSymbolicLink()){done(null,entry);return}settings.fs.stat(entry.path,(statError,stats)=>{if(statError!==null){if(settings.throwErrorOnBrokenSymbolicLink){done(statError);return}done(null,entry);return}entry.dirent=utils.fs.createDirentFromStats(entry.name,stats),done(null,entry)})}}function readdir2(directory,settings,callback){settings.fs.readdir(directory,(readdirError,names)=>{if(readdirError!==null){callFailureCallback(callback,readdirError);return}let tasks=names.map(name=>{let path7=common.joinPathSegments(directory,name,settings.pathSegmentSeparator);return done=>{fsStat.stat(path7,settings.fsStatSettings,(error,stats)=>{if(error!==null){done(error);return}let entry={name,path:path7,dirent:utils.fs.createDirentFromStats(name,stats)};settings.stats&&(entry.stats=stats),done(null,entry)})}});rpl(tasks,(rplError,entries)=>{if(rplError!==null){callFailureCallback(callback,rplError);return}callSuccessCallback(callback,entries)})})}exports2.readdir=readdir2;function callFailureCallback(callback,error){callback(error)}function callSuccessCallback(callback,result){callback(null,result)}}});var require_sync2=__commonJS({"../../node_modules/@nodelib/fs.scandir/out/providers/sync.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.readdir=exports2.readdirWithFileTypes=exports2.read=void 0;var fsStat=require_out(),constants_1=require_constants4(),utils=require_utils4(),common=require_common();function read(directory,settings){return!settings.stats&&constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES?readdirWithFileTypes(directory,settings):readdir2(directory,settings)}exports2.read=read;function readdirWithFileTypes(directory,settings){return settings.fs.readdirSync(directory,{withFileTypes:!0}).map(dirent=>{let entry={dirent,name:dirent.name,path:common.joinPathSegments(directory,dirent.name,settings.pathSegmentSeparator)};if(entry.dirent.isSymbolicLink()&&settings.followSymbolicLinks)try{let stats=settings.fs.statSync(entry.path);entry.dirent=utils.fs.createDirentFromStats(entry.name,stats)}catch(error){if(settings.throwErrorOnBrokenSymbolicLink)throw error}return entry})}exports2.readdirWithFileTypes=readdirWithFileTypes;function readdir2(directory,settings){return settings.fs.readdirSync(directory).map(name=>{let entryPath=common.joinPathSegments(directory,name,settings.pathSegmentSeparator),stats=fsStat.statSync(entryPath,settings.fsStatSettings),entry={name,path:entryPath,dirent:utils.fs.createDirentFromStats(name,stats)};return settings.stats&&(entry.stats=stats),entry})}exports2.readdir=readdir2}});var require_fs4=__commonJS({"../../node_modules/@nodelib/fs.scandir/out/adapters/fs.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.createFileSystemAdapter=exports2.FILE_SYSTEM_ADAPTER=void 0;var fs7=require("fs");exports2.FILE_SYSTEM_ADAPTER={lstat:fs7.lstat,stat:fs7.stat,lstatSync:fs7.lstatSync,statSync:fs7.statSync,readdir:fs7.readdir,readdirSync:fs7.readdirSync};function createFileSystemAdapter(fsMethods){return fsMethods===void 0?exports2.FILE_SYSTEM_ADAPTER:Object.assign(Object.assign({},exports2.FILE_SYSTEM_ADAPTER),fsMethods)}exports2.createFileSystemAdapter=createFileSystemAdapter}});var require_settings2=__commonJS({"../../node_modules/@nodelib/fs.scandir/out/settings.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var path7=require("path"),fsStat=require_out(),fs7=require_fs4(),Settings=class{constructor(_options={}){this._options=_options,this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!1),this.fs=fs7.createFileSystemAdapter(this._options.fs),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,path7.sep),this.stats=this._getValue(this._options.stats,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!0),this.fsStatSettings=new fsStat.Settings({followSymbolicLink:this.followSymbolicLinks,fs:this.fs,throwErrorOnBrokenSymbolicLink:this.throwErrorOnBrokenSymbolicLink})}_getValue(option,value){return option??value}};exports2.default=Settings}});var require_out2=__commonJS({"../../node_modules/@nodelib/fs.scandir/out/index.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.Settings=exports2.scandirSync=exports2.scandir=void 0;var async=require_async2(),sync=require_sync2(),settings_1=require_settings2();exports2.Settings=settings_1.default;function scandir(path7,optionsOrSettingsOrCallback,callback){if(typeof optionsOrSettingsOrCallback=="function"){async.read(path7,getSettings(),optionsOrSettingsOrCallback);return}async.read(path7,getSettings(optionsOrSettingsOrCallback),callback)}exports2.scandir=scandir;function scandirSync(path7,optionsOrSettings){let settings=getSettings(optionsOrSettings);return sync.read(path7,settings)}exports2.scandirSync=scandirSync;function getSettings(settingsOrOptions={}){return settingsOrOptions instanceof settings_1.default?settingsOrOptions:new settings_1.default(settingsOrOptions)}}});var require_reusify=__commonJS({"../../node_modules/reusify/reusify.js"(exports2,module2){"use strict";function reusify(Constructor){var head=new Constructor,tail=head;function get(){var current=head;return current.next?head=current.next:(head=new Constructor,tail=head),current.next=null,current}function release(obj){tail.next=obj,tail=obj}return{get,release}}module2.exports=reusify}});var require_queue=__commonJS({"../../node_modules/fastq/queue.js"(exports2,module2){"use strict";var reusify=require_reusify();function fastqueue(context,worker,_concurrency){if(typeof context=="function"&&(_concurrency=worker,worker=context,context=null),!(_concurrency>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var cache=reusify(Task),queueHead=null,queueTail=null,_running=0,errorHandler=null,self2={push,drain:noop2,saturated:noop2,pause,paused:!1,get concurrency(){return _concurrency},set concurrency(value){if(!(value>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(_concurrency=value,!self2.paused)for(;queueHead&&_running<_concurrency;)_running++,release()},running,resume,idle,length,getQueue,unshift,empty:noop2,kill,killAndDrain,error};return self2;function running(){return _running}function pause(){self2.paused=!0}function length(){for(var current=queueHead,counter=0;current;)current=current.next,counter++;return counter}function getQueue(){for(var current=queueHead,tasks=[];current;)tasks.push(current.value),current=current.next;return tasks}function resume(){if(self2.paused){if(self2.paused=!1,queueHead===null){_running++,release();return}for(;queueHead&&_running<_concurrency;)_running++,release()}}function idle(){return _running===0&&self2.length()===0}function push(value,done){var current=cache.get();current.context=context,current.release=release,current.value=value,current.callback=done||noop2,current.errorHandler=errorHandler,_running>=_concurrency||self2.paused?queueTail?(queueTail.next=current,queueTail=current):(queueHead=current,queueTail=current,self2.saturated()):(_running++,worker.call(context,current.value,current.worked))}function unshift(value,done){var current=cache.get();current.context=context,current.release=release,current.value=value,current.callback=done||noop2,current.errorHandler=errorHandler,_running>=_concurrency||self2.paused?queueHead?(current.next=queueHead,queueHead=current):(queueHead=current,queueTail=current,self2.saturated()):(_running++,worker.call(context,current.value,current.worked))}function release(holder){holder&&cache.release(holder);var next=queueHead;next&&_running<=_concurrency?self2.paused?_running--:(queueTail===queueHead&&(queueTail=null),queueHead=next.next,next.next=null,worker.call(context,next.value,next.worked),queueTail===null&&self2.empty()):--_running===0&&self2.drain()}function kill(){queueHead=null,queueTail=null,self2.drain=noop2}function killAndDrain(){queueHead=null,queueTail=null,self2.drain(),self2.drain=noop2}function error(handler){errorHandler=handler}}function noop2(){}function Task(){this.value=null,this.callback=noop2,this.next=null,this.release=noop2,this.context=null,this.errorHandler=null;var self2=this;this.worked=function(err,result){var callback=self2.callback,errorHandler=self2.errorHandler,val=self2.value;self2.value=null,self2.callback=noop2,self2.errorHandler&&errorHandler(err,val),callback.call(self2.context,err,result),self2.release(self2)}}function queueAsPromised(context,worker,_concurrency){typeof context=="function"&&(_concurrency=worker,worker=context,context=null);function asyncWrapper(arg,cb){worker.call(this,arg).then(function(res){cb(null,res)},cb)}var queue=fastqueue(context,asyncWrapper,_concurrency),pushCb=queue.push,unshiftCb=queue.unshift;return queue.push=push,queue.unshift=unshift,queue.drained=drained,queue;function push(value){var p=new Promise(function(resolve,reject){pushCb(value,function(err,result){if(err){reject(err);return}resolve(result)})});return p.catch(noop2),p}function unshift(value){var p=new Promise(function(resolve,reject){unshiftCb(value,function(err,result){if(err){reject(err);return}resolve(result)})});return p.catch(noop2),p}function drained(){var p=new Promise(function(resolve){process.nextTick(function(){if(queue.idle())resolve();else{var previousDrain=queue.drain;queue.drain=function(){typeof previousDrain=="function"&&previousDrain(),resolve(),queue.drain=previousDrain}}})});return p}}module2.exports=fastqueue;module2.exports.promise=queueAsPromised}});var require_common2=__commonJS({"../../node_modules/@nodelib/fs.walk/out/readers/common.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.joinPathSegments=exports2.replacePathSegmentSeparator=exports2.isAppliedFilter=exports2.isFatalError=void 0;function isFatalError(settings,error){return settings.errorFilter===null?!0:!settings.errorFilter(error)}exports2.isFatalError=isFatalError;function isAppliedFilter(filter,value){return filter===null||filter(value)}exports2.isAppliedFilter=isAppliedFilter;function replacePathSegmentSeparator(filepath,separator){return filepath.split(/[/\\]/).join(separator)}exports2.replacePathSegmentSeparator=replacePathSegmentSeparator;function joinPathSegments(a,b,separator){return a===""?b:a.endsWith(separator)?a+b:a+separator+b}exports2.joinPathSegments=joinPathSegments}});var require_reader=__commonJS({"../../node_modules/@nodelib/fs.walk/out/readers/reader.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var common=require_common2(),Reader=class{constructor(_root,_settings){this._root=_root,this._settings=_settings,this._root=common.replacePathSegmentSeparator(_root,_settings.pathSegmentSeparator)}};exports2.default=Reader}});var require_async3=__commonJS({"../../node_modules/@nodelib/fs.walk/out/readers/async.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var events_1=require("events"),fsScandir=require_out2(),fastq=require_queue(),common=require_common2(),reader_1=require_reader(),AsyncReader=class extends reader_1.default{constructor(_root,_settings){super(_root,_settings),this._settings=_settings,this._scandir=fsScandir.scandir,this._emitter=new events_1.EventEmitter,this._queue=fastq(this._worker.bind(this),this._settings.concurrency),this._isFatalError=!1,this._isDestroyed=!1,this._queue.drain=()=>{this._isFatalError||this._emitter.emit("end")}}read(){return this._isFatalError=!1,this._isDestroyed=!1,setImmediate(()=>{this._pushToQueue(this._root,this._settings.basePath)}),this._emitter}get isDestroyed(){return this._isDestroyed}destroy(){if(this._isDestroyed)throw new Error("The reader is already destroyed");this._isDestroyed=!0,this._queue.killAndDrain()}onEntry(callback){this._emitter.on("entry",callback)}onError(callback){this._emitter.once("error",callback)}onEnd(callback){this._emitter.once("end",callback)}_pushToQueue(directory,base){let queueItem={directory,base};this._queue.push(queueItem,error=>{error!==null&&this._handleError(error)})}_worker(item,done){this._scandir(item.directory,this._settings.fsScandirSettings,(error,entries)=>{if(error!==null){done(error,void 0);return}for(let entry of entries)this._handleEntry(entry,item.base);done(null,void 0)})}_handleError(error){this._isDestroyed||!common.isFatalError(this._settings,error)||(this._isFatalError=!0,this._isDestroyed=!0,this._emitter.emit("error",error))}_handleEntry(entry,base){if(this._isDestroyed||this._isFatalError)return;let fullpath=entry.path;base!==void 0&&(entry.path=common.joinPathSegments(base,entry.name,this._settings.pathSegmentSeparator)),common.isAppliedFilter(this._settings.entryFilter,entry)&&this._emitEntry(entry),entry.dirent.isDirectory()&&common.isAppliedFilter(this._settings.deepFilter,entry)&&this._pushToQueue(fullpath,base===void 0?void 0:entry.path)}_emitEntry(entry){this._emitter.emit("entry",entry)}};exports2.default=AsyncReader}});var require_async4=__commonJS({"../../node_modules/@nodelib/fs.walk/out/providers/async.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var async_1=require_async3(),AsyncProvider=class{constructor(_root,_settings){this._root=_root,this._settings=_settings,this._reader=new async_1.default(this._root,this._settings),this._storage=[]}read(callback){this._reader.onError(error=>{callFailureCallback(callback,error)}),this._reader.onEntry(entry=>{this._storage.push(entry)}),this._reader.onEnd(()=>{callSuccessCallback(callback,this._storage)}),this._reader.read()}};exports2.default=AsyncProvider;function callFailureCallback(callback,error){callback(error)}function callSuccessCallback(callback,entries){callback(null,entries)}}});var require_stream2=__commonJS({"../../node_modules/@nodelib/fs.walk/out/providers/stream.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var stream_1=require("stream"),async_1=require_async3(),StreamProvider=class{constructor(_root,_settings){this._root=_root,this._settings=_settings,this._reader=new async_1.default(this._root,this._settings),this._stream=new stream_1.Readable({objectMode:!0,read:()=>{},destroy:()=>{this._reader.isDestroyed||this._reader.destroy()}})}read(){return this._reader.onError(error=>{this._stream.emit("error",error)}),this._reader.onEntry(entry=>{this._stream.push(entry)}),this._reader.onEnd(()=>{this._stream.push(null)}),this._reader.read(),this._stream}};exports2.default=StreamProvider}});var require_sync3=__commonJS({"../../node_modules/@nodelib/fs.walk/out/readers/sync.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var fsScandir=require_out2(),common=require_common2(),reader_1=require_reader(),SyncReader=class extends reader_1.default{constructor(){super(...arguments),this._scandir=fsScandir.scandirSync,this._storage=[],this._queue=new Set}read(){return this._pushToQueue(this._root,this._settings.basePath),this._handleQueue(),this._storage}_pushToQueue(directory,base){this._queue.add({directory,base})}_handleQueue(){for(let item of this._queue.values())this._handleDirectory(item.directory,item.base)}_handleDirectory(directory,base){try{let entries=this._scandir(directory,this._settings.fsScandirSettings);for(let entry of entries)this._handleEntry(entry,base)}catch(error){this._handleError(error)}}_handleError(error){if(common.isFatalError(this._settings,error))throw error}_handleEntry(entry,base){let fullpath=entry.path;base!==void 0&&(entry.path=common.joinPathSegments(base,entry.name,this._settings.pathSegmentSeparator)),common.isAppliedFilter(this._settings.entryFilter,entry)&&this._pushToStorage(entry),entry.dirent.isDirectory()&&common.isAppliedFilter(this._settings.deepFilter,entry)&&this._pushToQueue(fullpath,base===void 0?void 0:entry.path)}_pushToStorage(entry){this._storage.push(entry)}};exports2.default=SyncReader}});var require_sync4=__commonJS({"../../node_modules/@nodelib/fs.walk/out/providers/sync.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var sync_1=require_sync3(),SyncProvider=class{constructor(_root,_settings){this._root=_root,this._settings=_settings,this._reader=new sync_1.default(this._root,this._settings)}read(){return this._reader.read()}};exports2.default=SyncProvider}});var require_settings3=__commonJS({"../../node_modules/@nodelib/fs.walk/out/settings.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var path7=require("path"),fsScandir=require_out2(),Settings=class{constructor(_options={}){this._options=_options,this.basePath=this._getValue(this._options.basePath,void 0),this.concurrency=this._getValue(this._options.concurrency,Number.POSITIVE_INFINITY),this.deepFilter=this._getValue(this._options.deepFilter,null),this.entryFilter=this._getValue(this._options.entryFilter,null),this.errorFilter=this._getValue(this._options.errorFilter,null),this.pathSegmentSeparator=this._getValue(this._options.pathSegmentSeparator,path7.sep),this.fsScandirSettings=new fsScandir.Settings({followSymbolicLinks:this._options.followSymbolicLinks,fs:this._options.fs,pathSegmentSeparator:this._options.pathSegmentSeparator,stats:this._options.stats,throwErrorOnBrokenSymbolicLink:this._options.throwErrorOnBrokenSymbolicLink})}_getValue(option,value){return option??value}};exports2.default=Settings}});var require_out3=__commonJS({"../../node_modules/@nodelib/fs.walk/out/index.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.Settings=exports2.walkStream=exports2.walkSync=exports2.walk=void 0;var async_1=require_async4(),stream_1=require_stream2(),sync_1=require_sync4(),settings_1=require_settings3();exports2.Settings=settings_1.default;function walk(directory,optionsOrSettingsOrCallback,callback){if(typeof optionsOrSettingsOrCallback=="function"){new async_1.default(directory,getSettings()).read(optionsOrSettingsOrCallback);return}new async_1.default(directory,getSettings(optionsOrSettingsOrCallback)).read(callback)}exports2.walk=walk;function walkSync(directory,optionsOrSettings){let settings=getSettings(optionsOrSettings);return new sync_1.default(directory,settings).read()}exports2.walkSync=walkSync;function walkStream(directory,optionsOrSettings){let settings=getSettings(optionsOrSettings);return new stream_1.default(directory,settings).read()}exports2.walkStream=walkStream;function getSettings(settingsOrOptions={}){return settingsOrOptions instanceof settings_1.default?settingsOrOptions:new settings_1.default(settingsOrOptions)}}});var require_reader2=__commonJS({"../../node_modules/fast-glob/out/readers/reader.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var path7=require("path"),fsStat=require_out(),utils=require_utils3(),Reader=class{constructor(_settings){this._settings=_settings,this._fsStatSettings=new fsStat.Settings({followSymbolicLink:this._settings.followSymbolicLinks,fs:this._settings.fs,throwErrorOnBrokenSymbolicLink:this._settings.followSymbolicLinks})}_getFullEntryPath(filepath){return path7.resolve(this._settings.cwd,filepath)}_makeEntry(stats,pattern){let entry={name:pattern,path:pattern,dirent:utils.fs.createDirentFromStats(pattern,stats)};return this._settings.stats&&(entry.stats=stats),entry}_isFatalError(error){return!utils.errno.isEnoentCodeError(error)&&!this._settings.suppressErrors}};exports2.default=Reader}});var require_stream3=__commonJS({"../../node_modules/fast-glob/out/readers/stream.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var stream_1=require("stream"),fsStat=require_out(),fsWalk=require_out3(),reader_1=require_reader2(),ReaderStream=class extends reader_1.default{constructor(){super(...arguments),this._walkStream=fsWalk.walkStream,this._stat=fsStat.stat}dynamic(root,options){return this._walkStream(root,options)}static(patterns,options){let filepaths=patterns.map(this._getFullEntryPath,this),stream=new stream_1.PassThrough({objectMode:!0});stream._write=(index,_enc,done)=>this._getEntry(filepaths[index],patterns[index],options).then(entry=>{entry!==null&&options.entryFilter(entry)&&stream.push(entry),index===filepaths.length-1&&stream.end(),done()}).catch(done);for(let i=0;i<filepaths.length;i++)stream.write(i);return stream}_getEntry(filepath,pattern,options){return this._getStat(filepath).then(stats=>this._makeEntry(stats,pattern)).catch(error=>{if(options.errorFilter(error))return null;throw error})}_getStat(filepath){return new Promise((resolve,reject)=>{this._stat(filepath,this._fsStatSettings,(error,stats)=>error===null?resolve(stats):reject(error))})}};exports2.default=ReaderStream}});var require_async5=__commonJS({"../../node_modules/fast-glob/out/readers/async.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var fsWalk=require_out3(),reader_1=require_reader2(),stream_1=require_stream3(),ReaderAsync=class extends reader_1.default{constructor(){super(...arguments),this._walkAsync=fsWalk.walk,this._readerStream=new stream_1.default(this._settings)}dynamic(root,options){return new Promise((resolve,reject)=>{this._walkAsync(root,options,(error,entries)=>{error===null?resolve(entries):reject(error)})})}async static(patterns,options){let entries=[],stream=this._readerStream.static(patterns,options);return new Promise((resolve,reject)=>{stream.once("error",reject),stream.on("data",entry=>entries.push(entry)),stream.once("end",()=>resolve(entries))})}};exports2.default=ReaderAsync}});var require_matcher=__commonJS({"../../node_modules/fast-glob/out/providers/matchers/matcher.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var utils=require_utils3(),Matcher=class{constructor(_patterns,_settings,_micromatchOptions){this._patterns=_patterns,this._settings=_settings,this._micromatchOptions=_micromatchOptions,this._storage=[],this._fillStorage()}_fillStorage(){for(let pattern of this._patterns){let segments=this._getPatternSegments(pattern),sections=this._splitSegmentsIntoSections(segments);this._storage.push({complete:sections.length<=1,pattern,segments,sections})}}_getPatternSegments(pattern){return utils.pattern.getPatternParts(pattern,this._micromatchOptions).map(part=>utils.pattern.isDynamicPattern(part,this._settings)?{dynamic:!0,pattern:part,patternRe:utils.pattern.makeRe(part,this._micromatchOptions)}:{dynamic:!1,pattern:part})}_splitSegmentsIntoSections(segments){return utils.array.splitWhen(segments,segment=>segment.dynamic&&utils.pattern.hasGlobStar(segment.pattern))}};exports2.default=Matcher}});var require_partial=__commonJS({"../../node_modules/fast-glob/out/providers/matchers/partial.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var matcher_1=require_matcher(),PartialMatcher=class extends matcher_1.default{match(filepath){let parts=filepath.split("/"),levels=parts.length,patterns=this._storage.filter(info=>!info.complete||info.segments.length>levels);for(let pattern of patterns){let section=pattern.sections[0];if(!pattern.complete&&levels>section.length||parts.every((part,index)=>{let segment=pattern.segments[index];return!!(segment.dynamic&&segment.patternRe.test(part)||!segment.dynamic&&segment.pattern===part)}))return!0}return!1}};exports2.default=PartialMatcher}});var require_deep=__commonJS({"../../node_modules/fast-glob/out/providers/filters/deep.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var utils=require_utils3(),partial_1=require_partial(),DeepFilter=class{constructor(_settings,_micromatchOptions){this._settings=_settings,this._micromatchOptions=_micromatchOptions}getFilter(basePath,positive,negative){let matcher=this._getMatcher(positive),negativeRe=this._getNegativePatternsRe(negative);return entry=>this._filter(basePath,entry,matcher,negativeRe)}_getMatcher(patterns){return new partial_1.default(patterns,this._settings,this._micromatchOptions)}_getNegativePatternsRe(patterns){let affectDepthOfReadingPatterns=patterns.filter(utils.pattern.isAffectDepthOfReadingPattern);return utils.pattern.convertPatternsToRe(affectDepthOfReadingPatterns,this._micromatchOptions)}_filter(basePath,entry,matcher,negativeRe){if(this._isSkippedByDeep(basePath,entry.path)||this._isSkippedSymbolicLink(entry))return!1;let filepath=utils.path.removeLeadingDotSegment(entry.path);return this._isSkippedByPositivePatterns(filepath,matcher)?!1:this._isSkippedByNegativePatterns(filepath,negativeRe)}_isSkippedByDeep(basePath,entryPath){return this._settings.deep===1/0?!1:this._getEntryLevel(basePath,entryPath)>=this._settings.deep}_getEntryLevel(basePath,entryPath){let entryPathDepth=entryPath.split("/").length;if(basePath==="")return entryPathDepth;let basePathDepth=basePath.split("/").length;return entryPathDepth-basePathDepth}_isSkippedSymbolicLink(entry){return!this._settings.followSymbolicLinks&&entry.dirent.isSymbolicLink()}_isSkippedByPositivePatterns(entryPath,matcher){return!this._settings.baseNameMatch&&!matcher.match(entryPath)}_isSkippedByNegativePatterns(entryPath,patternsRe){return!utils.pattern.matchAny(entryPath,patternsRe)}};exports2.default=DeepFilter}});var require_entry=__commonJS({"../../node_modules/fast-glob/out/providers/filters/entry.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var utils=require_utils3(),EntryFilter=class{constructor(_settings,_micromatchOptions){this._settings=_settings,this._micromatchOptions=_micromatchOptions,this.index=new Map}getFilter(positive,negative){let[absoluteNegative,relativeNegative]=utils.pattern.partitionAbsoluteAndRelative(negative),patterns={positive:{all:utils.pattern.convertPatternsToRe(positive,this._micromatchOptions)},negative:{absolute:utils.pattern.convertPatternsToRe(absoluteNegative,Object.assign(Object.assign({},this._micromatchOptions),{dot:!0})),relative:utils.pattern.convertPatternsToRe(relativeNegative,Object.assign(Object.assign({},this._micromatchOptions),{dot:!0}))}};return entry=>this._filter(entry,patterns)}_filter(entry,patterns){let filepath=utils.path.removeLeadingDotSegment(entry.path);if(this._settings.unique&&this._isDuplicateEntry(filepath)||this._onlyFileFilter(entry)||this._onlyDirectoryFilter(entry))return!1;let isMatched=this._isMatchToPatternsSet(filepath,patterns,entry.dirent.isDirectory());return this._settings.unique&&isMatched&&this._createIndexRecord(filepath),isMatched}_isDuplicateEntry(filepath){return this.index.has(filepath)}_createIndexRecord(filepath){this.index.set(filepath,void 0)}_onlyFileFilter(entry){return this._settings.onlyFiles&&!entry.dirent.isFile()}_onlyDirectoryFilter(entry){return this._settings.onlyDirectories&&!entry.dirent.isDirectory()}_isMatchToPatternsSet(filepath,patterns,isDirectory2){return!(!this._isMatchToPatterns(filepath,patterns.positive.all,isDirectory2)||this._isMatchToPatterns(filepath,patterns.negative.relative,isDirectory2)||this._isMatchToAbsoluteNegative(filepath,patterns.negative.absolute,isDirectory2))}_isMatchToAbsoluteNegative(filepath,patternsRe,isDirectory2){if(patternsRe.length===0)return!1;let fullpath=utils.path.makeAbsolute(this._settings.cwd,filepath);return this._isMatchToPatterns(fullpath,patternsRe,isDirectory2)}_isMatchToPatterns(filepath,patternsRe,isDirectory2){if(patternsRe.length===0)return!1;let isMatched=utils.pattern.matchAny(filepath,patternsRe);return!isMatched&&isDirectory2?utils.pattern.matchAny(filepath+"/",patternsRe):isMatched}};exports2.default=EntryFilter}});var require_error=__commonJS({"../../node_modules/fast-glob/out/providers/filters/error.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var utils=require_utils3(),ErrorFilter=class{constructor(_settings){this._settings=_settings}getFilter(){return error=>this._isNonFatalError(error)}_isNonFatalError(error){return utils.errno.isEnoentCodeError(error)||this._settings.suppressErrors}};exports2.default=ErrorFilter}});var require_entry2=__commonJS({"../../node_modules/fast-glob/out/providers/transformers/entry.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var utils=require_utils3(),EntryTransformer=class{constructor(_settings){this._settings=_settings}getTransformer(){return entry=>this._transform(entry)}_transform(entry){let filepath=entry.path;return this._settings.absolute&&(filepath=utils.path.makeAbsolute(this._settings.cwd,filepath),filepath=utils.path.unixify(filepath)),this._settings.markDirectories&&entry.dirent.isDirectory()&&(filepath+="/"),this._settings.objectMode?Object.assign(Object.assign({},entry),{path:filepath}):filepath}};exports2.default=EntryTransformer}});var require_provider=__commonJS({"../../node_modules/fast-glob/out/providers/provider.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var path7=require("path"),deep_1=require_deep(),entry_1=require_entry(),error_1=require_error(),entry_2=require_entry2(),Provider=class{constructor(_settings){this._settings=_settings,this.errorFilter=new error_1.default(this._settings),this.entryFilter=new entry_1.default(this._settings,this._getMicromatchOptions()),this.deepFilter=new deep_1.default(this._settings,this._getMicromatchOptions()),this.entryTransformer=new entry_2.default(this._settings)}_getRootDirectory(task){return path7.resolve(this._settings.cwd,task.base)}_getReaderOptions(task){let basePath=task.base==="."?"":task.base;return{basePath,pathSegmentSeparator:"/",concurrency:this._settings.concurrency,deepFilter:this.deepFilter.getFilter(basePath,task.positive,task.negative),entryFilter:this.entryFilter.getFilter(task.positive,task.negative),errorFilter:this.errorFilter.getFilter(),followSymbolicLinks:this._settings.followSymbolicLinks,fs:this._settings.fs,stats:this._settings.stats,throwErrorOnBrokenSymbolicLink:this._settings.throwErrorOnBrokenSymbolicLink,transform:this.entryTransformer.getTransformer()}}_getMicromatchOptions(){return{dot:this._settings.dot,matchBase:this._settings.baseNameMatch,nobrace:!this._settings.braceExpansion,nocase:!this._settings.caseSensitiveMatch,noext:!this._settings.extglob,noglobstar:!this._settings.globstar,posix:!0,strictSlashes:!1}}};exports2.default=Provider}});var require_async6=__commonJS({"../../node_modules/fast-glob/out/providers/async.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var async_1=require_async5(),provider_1=require_provider(),ProviderAsync=class extends provider_1.default{constructor(){super(...arguments),this._reader=new async_1.default(this._settings)}async read(task){let root=this._getRootDirectory(task),options=this._getReaderOptions(task);return(await this.api(root,task,options)).map(entry=>options.transform(entry))}api(root,task,options){return task.dynamic?this._reader.dynamic(root,options):this._reader.static(task.patterns,options)}};exports2.default=ProviderAsync}});var require_stream4=__commonJS({"../../node_modules/fast-glob/out/providers/stream.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var stream_1=require("stream"),stream_2=require_stream3(),provider_1=require_provider(),ProviderStream=class extends provider_1.default{constructor(){super(...arguments),this._reader=new stream_2.default(this._settings)}read(task){let root=this._getRootDirectory(task),options=this._getReaderOptions(task),source=this.api(root,task,options),destination=new stream_1.Readable({objectMode:!0,read:()=>{}});return source.once("error",error=>destination.emit("error",error)).on("data",entry=>destination.emit("data",options.transform(entry))).once("end",()=>destination.emit("end")),destination.once("close",()=>source.destroy()),destination}api(root,task,options){return task.dynamic?this._reader.dynamic(root,options):this._reader.static(task.patterns,options)}};exports2.default=ProviderStream}});var require_sync5=__commonJS({"../../node_modules/fast-glob/out/readers/sync.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var fsStat=require_out(),fsWalk=require_out3(),reader_1=require_reader2(),ReaderSync=class extends reader_1.default{constructor(){super(...arguments),this._walkSync=fsWalk.walkSync,this._statSync=fsStat.statSync}dynamic(root,options){return this._walkSync(root,options)}static(patterns,options){let entries=[];for(let pattern of patterns){let filepath=this._getFullEntryPath(pattern),entry=this._getEntry(filepath,pattern,options);entry===null||!options.entryFilter(entry)||entries.push(entry)}return entries}_getEntry(filepath,pattern,options){try{let stats=this._getStat(filepath);return this._makeEntry(stats,pattern)}catch(error){if(options.errorFilter(error))return null;throw error}}_getStat(filepath){return this._statSync(filepath,this._fsStatSettings)}};exports2.default=ReaderSync}});var require_sync6=__commonJS({"../../node_modules/fast-glob/out/providers/sync.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var sync_1=require_sync5(),provider_1=require_provider(),ProviderSync=class extends provider_1.default{constructor(){super(...arguments),this._reader=new sync_1.default(this._settings)}read(task){let root=this._getRootDirectory(task),options=this._getReaderOptions(task);return this.api(root,task,options).map(options.transform)}api(root,task,options){return task.dynamic?this._reader.dynamic(root,options):this._reader.static(task.patterns,options)}};exports2.default=ProviderSync}});var require_settings4=__commonJS({"../../node_modules/fast-glob/out/settings.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});exports2.DEFAULT_FILE_SYSTEM_ADAPTER=void 0;var fs7=require("fs"),os2=require("os"),CPU_COUNT=Math.max(os2.cpus().length,1);exports2.DEFAULT_FILE_SYSTEM_ADAPTER={lstat:fs7.lstat,lstatSync:fs7.lstatSync,stat:fs7.stat,statSync:fs7.statSync,readdir:fs7.readdir,readdirSync:fs7.readdirSync};var Settings=class{constructor(_options={}){this._options=_options,this.absolute=this._getValue(this._options.absolute,!1),this.baseNameMatch=this._getValue(this._options.baseNameMatch,!1),this.braceExpansion=this._getValue(this._options.braceExpansion,!0),this.caseSensitiveMatch=this._getValue(this._options.caseSensitiveMatch,!0),this.concurrency=this._getValue(this._options.concurrency,CPU_COUNT),this.cwd=this._getValue(this._options.cwd,process.cwd()),this.deep=this._getValue(this._options.deep,1/0),this.dot=this._getValue(this._options.dot,!1),this.extglob=this._getValue(this._options.extglob,!0),this.followSymbolicLinks=this._getValue(this._options.followSymbolicLinks,!0),this.fs=this._getFileSystemMethods(this._options.fs),this.globstar=this._getValue(this._options.globstar,!0),this.ignore=this._getValue(this._options.ignore,[]),this.markDirectories=this._getValue(this._options.markDirectories,!1),this.objectMode=this._getValue(this._options.objectMode,!1),this.onlyDirectories=this._getValue(this._options.onlyDirectories,!1),this.onlyFiles=this._getValue(this._options.onlyFiles,!0),this.stats=this._getValue(this._options.stats,!1),this.suppressErrors=this._getValue(this._options.suppressErrors,!1),this.throwErrorOnBrokenSymbolicLink=this._getValue(this._options.throwErrorOnBrokenSymbolicLink,!1),this.unique=this._getValue(this._options.unique,!0),this.onlyDirectories&&(this.onlyFiles=!1),this.stats&&(this.objectMode=!0),this.ignore=[].concat(this.ignore)}_getValue(option,value){return option===void 0?value:option}_getFileSystemMethods(methods={}){return Object.assign(Object.assign({},exports2.DEFAULT_FILE_SYSTEM_ADAPTER),methods)}};exports2.default=Settings}});var require_out4=__commonJS({"../../node_modules/fast-glob/out/index.js"(exports2,module2){"use strict";var taskManager=require_tasks(),async_1=require_async6(),stream_1=require_stream4(),sync_1=require_sync6(),settings_1=require_settings4(),utils=require_utils3();async function FastGlob(source,options){assertPatternsInput2(source);let works=getWorks(source,async_1.default,options),result=await Promise.all(works);return utils.array.flatten(result)}(function(FastGlob2){FastGlob2.glob=FastGlob2,FastGlob2.globSync=sync,FastGlob2.globStream=stream,FastGlob2.async=FastGlob2;function sync(source,options){assertPatternsInput2(source);let works=getWorks(source,sync_1.default,options);return utils.array.flatten(works)}FastGlob2.sync=sync;function stream(source,options){assertPatternsInput2(source);let works=getWorks(source,stream_1.default,options);return utils.stream.merge(works)}FastGlob2.stream=stream;function generateTasks2(source,options){assertPatternsInput2(source);let patterns=[].concat(source),settings=new settings_1.default(options);return taskManager.generate(patterns,settings)}FastGlob2.generateTasks=generateTasks2;function isDynamicPattern2(source,options){assertPatternsInput2(source);let settings=new settings_1.default(options);return utils.pattern.isDynamicPattern(source,settings)}FastGlob2.isDynamicPattern=isDynamicPattern2;function escapePath(source){return assertPatternsInput2(source),utils.path.escape(source)}FastGlob2.escapePath=escapePath;function convertPathToPattern2(source){return assertPatternsInput2(source),utils.path.convertPathToPattern(source)}FastGlob2.convertPathToPattern=convertPathToPattern2;let posix;(function(posix2){function escapePath2(source){return assertPatternsInput2(source),utils.path.escapePosixPath(source)}posix2.escapePath=escapePath2;function convertPathToPattern3(source){return assertPatternsInput2(source),utils.path.convertPosixPathToPattern(source)}posix2.convertPathToPattern=convertPathToPattern3})(posix=FastGlob2.posix||(FastGlob2.posix={}));let win32;(function(win322){function escapePath2(source){return assertPatternsInput2(source),utils.path.escapeWindowsPath(source)}win322.escapePath=escapePath2;function convertPathToPattern3(source){return assertPatternsInput2(source),utils.path.convertWindowsPathToPattern(source)}win322.convertPathToPattern=convertPathToPattern3})(win32=FastGlob2.win32||(FastGlob2.win32={}))})(FastGlob||(FastGlob={}));function getWorks(source,_Provider,options){let patterns=[].concat(source),settings=new settings_1.default(options),tasks=taskManager.generate(patterns,settings),provider=new _Provider(settings);return tasks.map(provider.read,provider)}function assertPatternsInput2(input){if(![].concat(input).every(item=>utils.string.isString(item)&&!utils.string.isEmpty(item)))throw new TypeError("Patterns must be a string (non empty) or an array of strings")}module2.exports=FastGlob}});async function isType(fsStatType,statsMethodName,filePath){if(typeof filePath!="string")throw new TypeError(`Expected a string, got ${typeof filePath}`);try{return(await import_promises2.default[fsStatType](filePath))[statsMethodName]()}catch(error){if(error.code==="ENOENT")return!1;throw error}}function isTypeSync(fsStatType,statsMethodName,filePath){if(typeof filePath!="string")throw new TypeError(`Expected a string, got ${typeof filePath}`);try{return import_node_fs3.default[fsStatType](filePath)[statsMethodName]()}catch(error){if(error.code==="ENOENT")return!1;throw error}}var import_node_fs3,import_promises2,isFile,isDirectory,isSymlink,isFileSync,isDirectorySync,isSymlinkSync,init_path_type=__esm({"../../node_modules/globby/node_modules/path-type/index.js"(){"use strict";import_node_fs3=__toESM(require("fs"),1),import_promises2=__toESM(require("fs/promises"),1);isFile=isType.bind(void 0,"stat","isFile"),isDirectory=isType.bind(void 0,"stat","isDirectory"),isSymlink=isType.bind(void 0,"lstat","isSymbolicLink"),isFileSync=isTypeSync.bind(void 0,"statSync","isFile"),isDirectorySync=isTypeSync.bind(void 0,"statSync","isDirectory"),isSymlinkSync=isTypeSync.bind(void 0,"lstatSync","isSymbolicLink")}});var init_default2=__esm({"../../node_modules/unicorn-magic/default.js"(){"use strict"}});function toPath3(urlOrPath){return urlOrPath instanceof URL?(0,import_node_url3.fileURLToPath)(urlOrPath):urlOrPath}var import_node_util,import_node_child_process,import_node_path3,import_node_url3,execFileOriginal,TEN_MEGABYTES_IN_BYTES,init_node2=__esm({"../../node_modules/unicorn-magic/node.js"(){"use strict";import_node_util=require("util"),import_node_child_process=require("child_process"),import_node_path3=__toESM(require("path"),1),import_node_url3=require("url");init_default2();execFileOriginal=(0,import_node_util.promisify)(import_node_child_process.execFile);TEN_MEGABYTES_IN_BYTES=10*1024*1024}});var require_ignore=__commonJS({"../../node_modules/globby/node_modules/ignore/index.js"(exports2,module2){"use strict";function makeArray(subject){return Array.isArray(subject)?subject:[subject]}var UNDEFINED=void 0,EMPTY="",SPACE=" ",ESCAPE="\\",REGEX_TEST_BLANK_LINE=/^\s+$/,REGEX_INVALID_TRAILING_BACKSLASH=/(?:[^\\]|^)\\$/,REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION=/^\\!/,REGEX_REPLACE_LEADING_EXCAPED_HASH=/^\\#/,REGEX_SPLITALL_CRLF=/\r?\n/g,REGEX_TEST_INVALID_PATH=/^\.{0,2}\/|^\.{1,2}$/,REGEX_TEST_TRAILING_SLASH=/\/$/,SLASH="/",TMP_KEY_IGNORE="node-ignore";typeof Symbol<"u"&&(TMP_KEY_IGNORE=Symbol.for("node-ignore"));var KEY_IGNORE=TMP_KEY_IGNORE,define=(object,key,value)=>(Object.defineProperty(object,key,{value}),value),REGEX_REGEXP_RANGE=/([0-z])-([0-z])/g,RETURN_FALSE=()=>!1,sanitizeRange=range=>range.replace(REGEX_REGEXP_RANGE,(match,from,to)=>from.charCodeAt(0)<=to.charCodeAt(0)?match:EMPTY),cleanRangeBackSlash=slashes=>{let{length}=slashes;return slashes.slice(0,length-length%2)},REPLACERS=[[/^\uFEFF/,()=>EMPTY],[/((?:\\\\)*?)(\\?\s+)$/,(_,m1,m2)=>m1+(m2.indexOf("\\")===0?SPACE:EMPTY)],[/(\\+?)\s/g,(_,m1)=>{let{length}=m1;return m1.slice(0,length-length%2)+SPACE}],[/[\\$.|*+(){^]/g,match=>`\\${match}`],[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,function(){return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"}],[/\\\/\\\*\\\*(?=\\\/|$)/g,(_,index,str)=>index+6<str.length?"(?:\\/[^\\/]+)*":"\\/.+"],[/(^|[^\\]+)(\\\*)+(?=.+)/g,(_,p1,p2)=>{let unescaped=p2.replace(/\\\*/g,"[^\\/]*");return p1+unescaped}],[/\\\\\\(?=[$.|*+(){^])/g,()=>ESCAPE],[/\\\\/g,()=>ESCAPE],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(match,leadEscape,range,endEscape,close)=>leadEscape===ESCAPE?`\\[${range}${cleanRangeBackSlash(endEscape)}${close}`:close==="]"&&endEscape.length%2===0?`[${sanitizeRange(range)}${endEscape}]`:"[]"],[/(?:[^*])$/,match=>/\/$/.test(match)?`${match}$`:`${match}(?=$|\\/$)`]],REGEX_REPLACE_TRAILING_WILDCARD=/(^|\\\/)?\\\*$/,MODE_IGNORE="regex",MODE_CHECK_IGNORE="checkRegex",UNDERSCORE="_",TRAILING_WILD_CARD_REPLACERS={[MODE_IGNORE](_,p1){return`${p1?`${p1}[^/]+`:"[^/]*"}(?=$|\\/$)`},[MODE_CHECK_IGNORE](_,p1){return`${p1?`${p1}[^/]*`:"[^/]*"}(?=$|\\/$)`}},makeRegexPrefix=pattern=>REPLACERS.reduce((prev,[matcher,replacer])=>prev.replace(matcher,replacer.bind(pattern)),pattern),isString=subject=>typeof subject=="string",checkPattern=pattern=>pattern&&isString(pattern)&&!REGEX_TEST_BLANK_LINE.test(pattern)&&!REGEX_INVALID_TRAILING_BACKSLASH.test(pattern)&&pattern.indexOf("#")!==0,splitPattern=pattern=>pattern.split(REGEX_SPLITALL_CRLF).filter(Boolean),IgnoreRule=class{constructor(pattern,mark,body,ignoreCase,negative,prefix2){this.pattern=pattern,this.mark=mark,this.negative=negative,define(this,"body",body),define(this,"ignoreCase",ignoreCase),define(this,"regexPrefix",prefix2)}get regex(){let key=UNDERSCORE+MODE_IGNORE;return this[key]?this[key]:this._make(MODE_IGNORE,key)}get checkRegex(){let key=UNDERSCORE+MODE_CHECK_IGNORE;return this[key]?this[key]:this._make(MODE_CHECK_IGNORE,key)}_make(mode,key){let str=this.regexPrefix.replace(REGEX_REPLACE_TRAILING_WILDCARD,TRAILING_WILD_CARD_REPLACERS[mode]),regex2=this.ignoreCase?new RegExp(str,"i"):new RegExp(str);return define(this,key,regex2)}},createRule=({pattern,mark},ignoreCase)=>{let negative=!1,body=pattern;body.indexOf("!")===0&&(negative=!0,body=body.substr(1)),body=body.replace(REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION,"!").replace(REGEX_REPLACE_LEADING_EXCAPED_HASH,"#");let regexPrefix=makeRegexPrefix(body);return new IgnoreRule(pattern,mark,body,ignoreCase,negative,regexPrefix)},RuleManager=class{constructor(ignoreCase){this._ignoreCase=ignoreCase,this._rules=[]}_add(pattern){if(pattern&&pattern[KEY_IGNORE]){this._rules=this._rules.concat(pattern._rules._rules),this._added=!0;return}if(isString(pattern)&&(pattern={pattern}),checkPattern(pattern.pattern)){let rule=createRule(pattern,this._ignoreCase);this._added=!0,this._rules.push(rule)}}add(pattern){return this._added=!1,makeArray(isString(pattern)?splitPattern(pattern):pattern).forEach(this._add,this),this._added}test(path7,checkUnignored,mode){let ignored=!1,unignored=!1,matchedRule;this._rules.forEach(rule=>{let{negative}=rule;unignored===negative&&ignored!==unignored||negative&&!ignored&&!unignored&&!checkUnignored||!rule[mode].test(path7)||(ignored=!negative,unignored=negative,matchedRule=negative?UNDEFINED:rule)});let ret={ignored,unignored};return matchedRule&&(ret.rule=matchedRule),ret}},throwError=(message,Ctor)=>{throw new Ctor(message)},checkPath=(path7,originalPath,doThrow)=>isString(path7)?path7?checkPath.isNotRelative(path7)?doThrow(`path should be a \`path.relative()\`d string, but got "${originalPath}"`,RangeError):!0:doThrow("path must not be empty",TypeError):doThrow(`path must be a string, but got \`${originalPath}\``,TypeError),isNotRelative=path7=>REGEX_TEST_INVALID_PATH.test(path7);checkPath.isNotRelative=isNotRelative;checkPath.convert=p=>p;var Ignore=class{constructor({ignorecase=!0,ignoreCase=ignorecase,allowRelativePaths=!1}={}){define(this,KEY_IGNORE,!0),this._rules=new RuleManager(ignoreCase),this._strictPathCheck=!allowRelativePaths,this._initCache()}_initCache(){this._ignoreCache=Object.create(null),this._testCache=Object.create(null)}add(pattern){return this._rules.add(pattern)&&this._initCache(),this}addPattern(pattern){return this.add(pattern)}_test(originalPath,cache,checkUnignored,slices){let path7=originalPath&&checkPath.convert(originalPath);return checkPath(path7,originalPath,this._strictPathCheck?throwError:RETURN_FALSE),this._t(path7,cache,checkUnignored,slices)}checkIgnore(path7){if(!REGEX_TEST_TRAILING_SLASH.test(path7))return this.test(path7);let slices=path7.split(SLASH).filter(Boolean);if(slices.pop(),slices.length){let parent=this._t(slices.join(SLASH)+SLASH,this._testCache,!0,slices);if(parent.ignored)return parent}return this._rules.test(path7,!1,MODE_CHECK_IGNORE)}_t(path7,cache,checkUnignored,slices){if(path7 in cache)return cache[path7];if(slices||(slices=path7.split(SLASH).filter(Boolean)),slices.pop(),!slices.length)return cache[path7]=this._rules.test(path7,checkUnignored,MODE_IGNORE);let parent=this._t(slices.join(SLASH)+SLASH,cache,checkUnignored,slices);return cache[path7]=parent.ignored?parent:this._rules.test(path7,checkUnignored,MODE_IGNORE)}ignores(path7){return this._test(path7,this._ignoreCache,!1).ignored}createFilter(){return path7=>!this.ignores(path7)}filter(paths){return makeArray(paths).filter(this.createFilter())}test(path7){return this._test(path7,this._testCache,!0)}},factory=options=>new Ignore(options),isPathValid=path7=>checkPath(path7&&checkPath.convert(path7),path7,RETURN_FALSE);if(typeof process<"u"&&(process.env&&process.env.IGNORE_TEST_WIN32||process.platform==="win32")){let makePosix=str=>/^\\\\\?\\/.test(str)||/["<>|\u0000-\u001F]+/u.test(str)?str:str.replace(/\\/g,"/");checkPath.convert=makePosix;let REGEX_TEST_WINDOWS_PATH_ABSOLUTE=/^[a-z]:\//i;checkPath.isNotRelative=path7=>REGEX_TEST_WINDOWS_PATH_ABSOLUTE.test(path7)||isNotRelative(path7)}module2.exports=factory;factory.default=factory;module2.exports.isPathValid=isPathValid}});function slash(path7){return path7.startsWith("\\\\?\\")?path7:path7.replace(/\\/g,"/")}var init_slash=__esm({"../../node_modules/slash/index.js"(){"use strict"}});var isNegativePattern,init_utilities=__esm({"../../node_modules/globby/utilities.js"(){"use strict";isNegativePattern=pattern=>pattern[0]==="!"}});var import_node_process3,import_node_fs4,import_promises3,import_node_path4,import_fast_glob,import_ignore,defaultIgnoredDirectories,ignoreFilesGlobOptions,GITIGNORE_FILES_PATTERN,applyBaseToPattern,parseIgnoreFile,toRelativePath,getIsIgnoredPredicate,normalizeOptions,isIgnoredByIgnoreFiles,isIgnoredByIgnoreFilesSync,isGitIgnored,isGitIgnoredSync,init_ignore=__esm({"../../node_modules/globby/ignore.js"(){"use strict";import_node_process3=__toESM(require("process"),1),import_node_fs4=__toESM(require("fs"),1),import_promises3=__toESM(require("fs/promises"),1),import_node_path4=__toESM(require("path"),1),import_fast_glob=__toESM(require_out4(),1),import_ignore=__toESM(require_ignore(),1);init_slash();init_node2();init_utilities();defaultIgnoredDirectories=["**/node_modules","**/flow-typed","**/coverage","**/.git"],ignoreFilesGlobOptions={absolute:!0,dot:!0},GITIGNORE_FILES_PATTERN="**/.gitignore",applyBaseToPattern=(pattern,base)=>isNegativePattern(pattern)?"!"+import_node_path4.default.posix.join(base,pattern.slice(1)):import_node_path4.default.posix.join(base,pattern),parseIgnoreFile=(file,cwd)=>{let base=slash(import_node_path4.default.relative(cwd,import_node_path4.default.dirname(file.filePath)));return file.content.split(/\r?\n/).filter(line=>line&&!line.startsWith("#")).map(pattern=>applyBaseToPattern(pattern,base))},toRelativePath=(fileOrDirectory,cwd)=>{if(cwd=slash(cwd),import_node_path4.default.isAbsolute(fileOrDirectory)){if(slash(fileOrDirectory).startsWith(cwd))return import_node_path4.default.relative(cwd,fileOrDirectory);throw new Error(`Path ${fileOrDirectory} is not in cwd ${cwd}`)}return fileOrDirectory},getIsIgnoredPredicate=(files,cwd)=>{let patterns=files.flatMap(file=>parseIgnoreFile(file,cwd)),ignores=(0,import_ignore.default)().add(patterns);return fileOrDirectory=>(fileOrDirectory=toPath3(fileOrDirectory),fileOrDirectory=toRelativePath(fileOrDirectory,cwd),fileOrDirectory?ignores.ignores(slash(fileOrDirectory)):!1)},normalizeOptions=(options={})=>({cwd:toPath3(options.cwd)??import_node_process3.default.cwd(),suppressErrors:!!options.suppressErrors,deep:typeof options.deep=="number"?options.deep:Number.POSITIVE_INFINITY,ignore:[...options.ignore??[],...defaultIgnoredDirectories]}),isIgnoredByIgnoreFiles=async(patterns,options)=>{let{cwd,suppressErrors,deep,ignore}=normalizeOptions(options),paths=await(0,import_fast_glob.default)(patterns,{cwd,suppressErrors,deep,ignore,...ignoreFilesGlobOptions}),files=await Promise.all(paths.map(async filePath=>({filePath,content:await import_promises3.default.readFile(filePath,"utf8")})));return getIsIgnoredPredicate(files,cwd)},isIgnoredByIgnoreFilesSync=(patterns,options)=>{let{cwd,suppressErrors,deep,ignore}=normalizeOptions(options),files=import_fast_glob.default.sync(patterns,{cwd,suppressErrors,deep,ignore,...ignoreFilesGlobOptions}).map(filePath=>({filePath,content:import_node_fs4.default.readFileSync(filePath,"utf8")}));return getIsIgnoredPredicate(files,cwd)},isGitIgnored=options=>isIgnoredByIgnoreFiles(GITIGNORE_FILES_PATTERN,options),isGitIgnoredSync=options=>isIgnoredByIgnoreFilesSync(GITIGNORE_FILES_PATTERN,options)}});var globby_exports={};__export(globby_exports,{convertPathToPattern:()=>convertPathToPattern,generateGlobTasks:()=>generateGlobTasks,generateGlobTasksSync:()=>generateGlobTasksSync,globby:()=>globby,globbyStream:()=>globbyStream,globbySync:()=>globbySync,isDynamicPattern:()=>isDynamicPattern,isGitIgnored:()=>isGitIgnored,isGitIgnoredSync:()=>isGitIgnoredSync,isIgnoredByIgnoreFiles:()=>isIgnoredByIgnoreFiles,isIgnoredByIgnoreFilesSync:()=>isIgnoredByIgnoreFilesSync});var import_node_process4,import_node_fs5,import_node_path5,import_fast_glob2,assertPatternsInput,normalizePathForDirectoryGlob,getDirectoryGlob,directoryToGlob,directoryToGlobSync,toPatternsArray,checkCwdOption,normalizeOptions2,normalizeArguments,normalizeArgumentsSync,getIgnoreFilesPatterns,getFilter,getFilterSync,createFilterFunction,unionFastGlobResults,convertNegativePatterns,normalizeExpandDirectoriesOption,generateTasks,generateTasksSync,globby,globbySync,globbyStream,isDynamicPattern,generateGlobTasks,generateGlobTasksSync,convertPathToPattern,init_globby=__esm({"../../node_modules/globby/index.js"(){"use strict";import_node_process4=__toESM(require("process"),1),import_node_fs5=__toESM(require("fs"),1),import_node_path5=__toESM(require("path"),1);init_merge_streams();import_fast_glob2=__toESM(require_out4(),1);init_path_type();init_node2();init_ignore();init_utilities();init_ignore();assertPatternsInput=patterns=>{if(patterns.some(pattern=>typeof pattern!="string"))throw new TypeError("Patterns must be a string or an array of strings")},normalizePathForDirectoryGlob=(filePath,cwd)=>{let path7=isNegativePattern(filePath)?filePath.slice(1):filePath;return import_node_path5.default.isAbsolute(path7)?path7:import_node_path5.default.join(cwd,path7)},getDirectoryGlob=({directoryPath,files,extensions})=>{let extensionGlob=extensions?.length>0?`.${extensions.length>1?`{${extensions.join(",")}}`:extensions[0]}`:"";return files?files.map(file=>import_node_path5.default.posix.join(directoryPath,`**/${import_node_path5.default.extname(file)?file:`${file}${extensionGlob}`}`)):[import_node_path5.default.posix.join(directoryPath,`**${extensionGlob?`/*${extensionGlob}`:""}`)]},directoryToGlob=async(directoryPaths,{cwd=import_node_process4.default.cwd(),files,extensions}={})=>(await Promise.all(directoryPaths.map(async directoryPath=>await isDirectory(normalizePathForDirectoryGlob(directoryPath,cwd))?getDirectoryGlob({directoryPath,files,extensions}):directoryPath))).flat(),directoryToGlobSync=(directoryPaths,{cwd=import_node_process4.default.cwd(),files,extensions}={})=>directoryPaths.flatMap(directoryPath=>isDirectorySync(normalizePathForDirectoryGlob(directoryPath,cwd))?getDirectoryGlob({directoryPath,files,extensions}):directoryPath),toPatternsArray=patterns=>(patterns=[...new Set([patterns].flat())],assertPatternsInput(patterns),patterns),checkCwdOption=cwd=>{if(!cwd)return;let stat;try{stat=import_node_fs5.default.statSync(cwd)}catch{return}if(!stat.isDirectory())throw new Error("The `cwd` option must be a path to a directory")},normalizeOptions2=(options={})=>(options={...options,ignore:options.ignore??[],expandDirectories:options.expandDirectories??!0,cwd:toPath3(options.cwd)},checkCwdOption(options.cwd),options),normalizeArguments=function_=>async(patterns,options)=>function_(toPatternsArray(patterns),normalizeOptions2(options)),normalizeArgumentsSync=function_=>(patterns,options)=>function_(toPatternsArray(patterns),normalizeOptions2(options)),getIgnoreFilesPatterns=options=>{let{ignoreFiles,gitignore}=options,patterns=ignoreFiles?toPatternsArray(ignoreFiles):[];return gitignore&&patterns.push(GITIGNORE_FILES_PATTERN),patterns},getFilter=async options=>{let ignoreFilesPatterns=getIgnoreFilesPatterns(options);return createFilterFunction(ignoreFilesPatterns.length>0&&await isIgnoredByIgnoreFiles(ignoreFilesPatterns,options))},getFilterSync=options=>{let ignoreFilesPatterns=getIgnoreFilesPatterns(options);return createFilterFunction(ignoreFilesPatterns.length>0&&isIgnoredByIgnoreFilesSync(ignoreFilesPatterns,options))},createFilterFunction=isIgnored=>{let seen=new Set;return fastGlobResult=>{let pathKey=import_node_path5.default.normalize(fastGlobResult.path??fastGlobResult);return seen.has(pathKey)||isIgnored&&isIgnored(pathKey)?!1:(seen.add(pathKey),!0)}},unionFastGlobResults=(results,filter)=>results.flat().filter(fastGlobResult=>filter(fastGlobResult)),convertNegativePatterns=(patterns,options)=>{let tasks=[];for(;patterns.length>0;){let index=patterns.findIndex(pattern=>isNegativePattern(pattern));if(index===-1){tasks.push({patterns,options});break}let ignorePattern=patterns[index].slice(1);for(let task of tasks)task.options.ignore.push(ignorePattern);index!==0&&tasks.push({patterns:patterns.slice(0,index),options:{...options,ignore:[...options.ignore,ignorePattern]}}),patterns=patterns.slice(index+1)}return tasks},normalizeExpandDirectoriesOption=(options,cwd)=>({...cwd?{cwd}:{},...Array.isArray(options)?{files:options}:options}),generateTasks=async(patterns,options)=>{let globTasks=convertNegativePatterns(patterns,options),{cwd,expandDirectories}=options;if(!expandDirectories)return globTasks;let directoryToGlobOptions=normalizeExpandDirectoriesOption(expandDirectories,cwd);return Promise.all(globTasks.map(async task=>{let{patterns:patterns2,options:options2}=task;return[patterns2,options2.ignore]=await Promise.all([directoryToGlob(patterns2,directoryToGlobOptions),directoryToGlob(options2.ignore,{cwd})]),{patterns:patterns2,options:options2}}))},generateTasksSync=(patterns,options)=>{let globTasks=convertNegativePatterns(patterns,options),{cwd,expandDirectories}=options;if(!expandDirectories)return globTasks;let directoryToGlobSyncOptions=normalizeExpandDirectoriesOption(expandDirectories,cwd);return globTasks.map(task=>{let{patterns:patterns2,options:options2}=task;return patterns2=directoryToGlobSync(patterns2,directoryToGlobSyncOptions),options2.ignore=directoryToGlobSync(options2.ignore,{cwd}),{patterns:patterns2,options:options2}})},globby=normalizeArguments(async(patterns,options)=>{let[tasks,filter]=await Promise.all([generateTasks(patterns,options),getFilter(options)]),results=await Promise.all(tasks.map(task=>(0,import_fast_glob2.default)(task.patterns,task.options)));return unionFastGlobResults(results,filter)}),globbySync=normalizeArgumentsSync((patterns,options)=>{let tasks=generateTasksSync(patterns,options),filter=getFilterSync(options),results=tasks.map(task=>import_fast_glob2.default.sync(task.patterns,task.options));return unionFastGlobResults(results,filter)}),globbyStream=normalizeArgumentsSync((patterns,options)=>{let tasks=generateTasksSync(patterns,options),filter=getFilterSync(options),streams=tasks.map(task=>import_fast_glob2.default.stream(task.patterns,task.options));return mergeStreams(streams).filter(fastGlobResult=>filter(fastGlobResult))}),isDynamicPattern=normalizeArgumentsSync((patterns,options)=>patterns.some(pattern=>import_fast_glob2.default.isDynamicPattern(pattern,options))),generateGlobTasks=normalizeArguments(generateTasks),generateGlobTasksSync=normalizeArgumentsSync(generateTasksSync),{convertPathToPattern}=import_fast_glob2.default}});var init_types=__esm({"src/autoblock/types.ts"(){"use strict"}});async function findOutdatedPackage(minimalVersionsMap3,options){return(await Promise.all(typedKeys(minimalVersionsMap3).map(async packageName=>({packageName,installedVersion:options.packageManager.getModulePackageJSON(packageName)?.version??null,minimumVersion:minimalVersionsMap3[packageName]})))).reduce((acc,{installedVersion,minimumVersion,packageName})=>acc||(packageName&&installedVersion&&(0,import_semver.lt)(installedVersion,minimumVersion)?{installedVersion,packageName,minimumVersion}:acc),!1)}function processAutoblockerResults(projects,onError){let autoblockerMessagesMap=new Map;projects.forEach(result=>{result.autoblockerCheckResults?.forEach(blocker6=>{if(blocker6.result===null||blocker6.result===!1)return;let blockerResult=blocker6.blocker.log(blocker6.result),message=blockerResult.message,link2=blockerResult.link;autoblockerMessagesMap.has(message)?autoblockerMessagesMap.get(message).configDirs.push(result.configDir):autoblockerMessagesMap.set(message,{title:blockerResult.title,message,link:link2,configDirs:[result.configDir]})})});let autoblockerMessages=Array.from(autoblockerMessagesMap.values());if(autoblockerMessages.length>0){let formatConfigDirs=configDirs=>{let baseMessage="Affected projects:",relativeDirs=configDirs.map(dir=>shortenPath(dir)||".");if(relativeDirs.length<=3)return`${baseMessage} ${relativeDirs.join(", ")}`;let remaining=relativeDirs.length-3;return`${baseMessage} ${relativeDirs.slice(0,3).join(", ")}${remaining>0?` and ${remaining} more...`:""}`},formattedMessages=autoblockerMessages.map(item=>{let message=`${import_node_logger.CLI_COLORS.warning(item.title)}
|
|
33
|
+
|
|
34
|
+
${item.message}
|
|
35
|
+
|
|
36
|
+
${formatConfigDirs(item.configDirs)}`;return item.link&&(message+=`
|
|
37
|
+
|
|
38
|
+
More information: ${item.link}`),message});return onError(`Storybook has found potential blockers that need to be resolved before upgrading:
|
|
39
|
+
|
|
40
|
+
${[...formattedMessages].join(`
|
|
9
41
|
|
|
10
|
-
|
|
11
|
-
features: {
|
|
12
|
-
${import_picocolors28.default.cyan("storyStoreV7: false")}, <--- ${import_picocolors28.default.bold("remove this line")}
|
|
13
|
-
},
|
|
14
|
-
};
|
|
42
|
+
`)}
|
|
15
43
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
After addressing this, you can try running the upgrade command again. You can also rerun the upgrade command with the ${import_node_logger.CLI_COLORS.info("--force")} flag to skip the blocker check and to proceed with the upgrade.`),!0}return!1}var import_node_logger,import_semver,typedKeys,init_utils=__esm({"src/autoblock/utils.ts"(){"use strict";import_node_logger=require("storybook/internal/node-logger"),import_semver=__toESM(require_semver2(),1);init_util();typedKeys=obj=>Object.keys(obj)}});var block_dependencies_versions_exports={};__export(block_dependencies_versions_exports,{blocker:()=>blocker});var import_ts_dedent,minimalVersionsMap,blocker,init_block_dependencies_versions=__esm({"src/autoblock/block-dependencies-versions.ts"(){"use strict";import_ts_dedent=require("ts-dedent");init_types();init_utils();minimalVersionsMap={"@angular/core":"18.0.0","react-scripts":"5.0.0",next:"14.1.0",preact:"10.0.0",svelte:"5.0.0",vue:"3.0.0",vite:"5.0.0"},blocker={id:"dependenciesVersions",async check({packageManager}){return findOutdatedPackage(minimalVersionsMap,{packageManager})},log(data){switch(data.packageName){case"@angular/core":return{title:"Angular 18 support removed",message:import_ts_dedent.dedent`
|
|
47
|
+
Support for Angular < 18 has been removed.
|
|
48
|
+
Please see the migration guide for more information:
|
|
49
|
+
`,link:"https://angular.dev/update-guide"};case"next":return{title:"Next.js 14.1 support removed",message:import_ts_dedent.dedent`
|
|
50
|
+
Support for Next.js < 14.1 has been removed.
|
|
51
|
+
Please see the migration guide for more information:
|
|
52
|
+
`,link:"https://nextjs.org/docs/pages/building-your-application/upgrading/version-13"};default:return{title:`${data.packageName} version < ${data.minimumVersion} support removed`,message:import_ts_dedent.dedent`
|
|
53
|
+
Support for ${data.packageName} version < ${data.minimumVersion} has been removed.
|
|
54
|
+
Storybook needs a minimum version of ${data.minimumVersion}, but you have version ${data.installedVersion}.
|
|
55
|
+
`}}}}}});var block_node_version_exports={};__export(block_node_version_exports,{blocker:()=>blocker2});var import_semver2,blocker2,init_block_node_version=__esm({"src/autoblock/block-node-version.ts"(){"use strict";import_semver2=__toESM(require_semver2(),1);init_types();blocker2={id:"minimumNode20",async check(){let nodeVersion=process.versions.node;return nodeVersion&&(0,import_semver2.lt)(nodeVersion,"20.0.0")?{nodeVersion}:!1},log(data){return{title:"Node.js 20 support removed",message:`We've detected you're using Node.js v${data.nodeVersion}. Storybook needs Node.js 20 or higher.`,link:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#nodejs--20"}}}}});var block_webpack5_frameworks_exports={};__export(block_webpack5_frameworks_exports,{blocker:()=>blocker3});var minimalVersionsMap2,blocker3,init_block_webpack5_frameworks=__esm({"src/autoblock/block-webpack5-frameworks.ts"(){"use strict";init_types();init_utils();minimalVersionsMap2={"@storybook/preact-webpack5":"9.0.0","@storybook/preset-preact-webpack":"9.0.0","@storybook/vue3-webpack5":"9.0.0","@storybook/preset-vue3-webpack":"9.0.0","@storybook/html-webpack5":"9.0.0","@storybook/preset-html-webpack":"9.0.0","@storybook/web-components-webpack5":"9.0.0","@storybook/svelte-webpack5":"9.0.0"},blocker3={id:"dependenciesVersions",async check({packageManager}){return findOutdatedPackage(minimalVersionsMap2,{packageManager})},log(data){let additionalInfo="Please migrate your Webpack5-based frameworks to their Vite equivalents.",link2="https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#dropped-webpack5-builder-support-in-favor-of-vite",title;switch(data.packageName){case"@storybook/preact-webpack5":case"@storybook/preset-preact-webpack":title="Preact Webpack5 support removed";break;case"@storybook/vue3-webpack5":case"@storybook/preset-vue3-webpack":title="Vue3 Webpack5 support removed";break;case"@storybook/html-webpack5":case"@storybook/preset-html-webpack":title="HTML Webpack5 support removed";break;case"@storybook/web-components-webpack5":title="Web Components Webpack5 support removed";break;case"@storybook/svelte-webpack5":title="Svelte Webpack5 support removed";break}return{title,message:additionalInfo,link:link2}}}}});var block_major_version_exports={};__export(block_major_version_exports,{blocker:()=>blocker4,validateVersionTransition:()=>validateVersionTransition});function validateVersionTransition(currentVersion,targetVersion){if(!currentVersion||!targetVersion)return"ok";let current=(0,import_semver3.parse)(currentVersion),target=(0,import_semver3.parse)(targetVersion);return!current||!target||current.major===0||target.major===0?"ok":(0,import_semver3.gt)(currentVersion,targetVersion)?"downgrade":target.major-current.major>1?"gap-too-large":"ok"}var import_common,import_node_logger2,import_semver3,import_ts_dedent2,blocker4,init_block_major_version=__esm({"src/autoblock/block-major-version.ts"(){"use strict";import_common=require("storybook/internal/common"),import_node_logger2=require("storybook/internal/node-logger"),import_semver3=__toESM(require_semver2(),1),import_ts_dedent2=require("ts-dedent");init_types();blocker4={id:"major-version-gap",async check(options){let{packageManager}=options;try{let currentStorybookVersion=packageManager.getAllDependencies().storybook;if(!currentStorybookVersion)return!1;let target=import_common.versions.storybook,result=validateVersionTransition(currentStorybookVersion,target);return result==="ok"?!1:{currentVersion:currentStorybookVersion,reason:result}}catch{return!1}},log(data){let coercedVersion=(0,import_semver3.coerce)(data.currentVersion);if(data.reason==="downgrade")return{title:"Downgrade Not Supported",message:import_ts_dedent2.dedent`
|
|
56
|
+
Your Storybook version (v${data.currentVersion}) is newer than the target release (v${import_common.versions.storybook}).Downgrading is not supported.
|
|
57
|
+
Please follow the 8.0 migration guide to upgrade to v8.0 first.
|
|
58
|
+
`,link:"https://storybook.js.org/docs/8/migration-guide"};if(coercedVersion){let nextMajor=(0,import_semver3.major)(coercedVersion)+1;return{title:"Major Version Gap Detected",message:import_ts_dedent2.dedent`
|
|
59
|
+
Your Storybook version (v${data.currentVersion}) is more than one major version behind the target release (v${import_common.versions.storybook}). Please upgrade one major version at a time.
|
|
21
60
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
${import_picocolors29.default.yellow("https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#dropped-webpack5-builder-support-in-favor-of-vite")}
|
|
27
|
-
`;case"@storybook/vue3-webpack5":case"@storybook/preset-vue3-webpack":return import_ts_dedent24.dedent`
|
|
28
|
-
Support for Vue3 Webpack5 has been removed.
|
|
29
|
-
Please see the migration guide for more information:
|
|
30
|
-
${import_picocolors29.default.yellow("https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#dropped-webpack5-builder-support-in-favor-of-vite")}
|
|
31
|
-
`;case"@storybook/html-webpack5":case"@storybook/preset-html-webpack":return import_ts_dedent24.dedent`
|
|
32
|
-
Support for HTML Webpack5 has been removed.
|
|
33
|
-
Please see the migration guide for more information:
|
|
34
|
-
${import_picocolors29.default.yellow("https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#dropped-webpack5-builder-support-in-favor-of-vite")}
|
|
35
|
-
`;case"@storybook/web-components-webpack5":return import_ts_dedent24.dedent`
|
|
36
|
-
Support for Web Components Webpack5 has been removed.
|
|
37
|
-
Please see the migration guide for more information:
|
|
38
|
-
${import_picocolors29.default.yellow("https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#dropped-webpack5-builder-support-in-favor-of-vite")}
|
|
39
|
-
`;case"vue":return import_ts_dedent24.dedent`
|
|
40
|
-
Support for Vue 2 has been removed.
|
|
41
|
-
Please see the migration guide for more information:
|
|
42
|
-
${import_picocolors29.default.yellow("https://v3-migration.vuejs.org/")}
|
|
43
|
-
|
|
44
|
-
Please upgrade to the latest version of Vue.
|
|
45
|
-
`;case"@angular/core":return import_ts_dedent24.dedent`
|
|
46
|
-
Support for Angular < 18 has been removed.
|
|
47
|
-
Please see the migration guide for more information:
|
|
48
|
-
${import_picocolors29.default.yellow("https://angular.dev/update-guide")}
|
|
49
|
-
|
|
50
|
-
Please upgrade to the latest version of Angular.
|
|
51
|
-
`;case"next":return import_ts_dedent24.dedent`
|
|
52
|
-
Support for Next.js < 14.1 has been removed.
|
|
53
|
-
Please see the migration guide for more information:
|
|
54
|
-
${import_picocolors29.default.yellow("https://nextjs.org/docs/pages/building-your-application/upgrading/version-13")}
|
|
55
|
-
|
|
56
|
-
Please upgrade to the latest version of Next.js.
|
|
57
|
-
`;default:return import_ts_dedent24.dedent`
|
|
58
|
-
Support for ${data.packageName} version < ${data.minimumVersion} has been removed.
|
|
59
|
-
Since version 8, Storybook needs a minimum version of ${data.minimumVersion}, but you have version ${data.installedVersion}.
|
|
60
|
-
|
|
61
|
-
Please update this dependency.
|
|
62
|
-
`}}}}});var block_node_version_exports={};__export(block_node_version_exports,{blocker:()=>blocker3});var import_picocolors30,import_semver9,import_ts_dedent25,blocker3,init_block_node_version=__esm({"src/autoblock/block-node-version.ts"(){"use strict";import_picocolors30=__toESM(require_picocolors(),1),import_semver9=require("semver"),import_ts_dedent25=require("ts-dedent");init_types();blocker3={id:"minimumNode20",async check(){let nodeVersion=process.versions.node;return nodeVersion&&(0,import_semver9.lt)(nodeVersion,"20.0.0")?{nodeVersion}:!1},log(options,data){return import_ts_dedent25.dedent`
|
|
63
|
-
We've detected you're using Node.js v${data.nodeVersion}.
|
|
64
|
-
Storybook needs Node.js 20 or higher.
|
|
65
|
-
|
|
66
|
-
${import_picocolors30.default.yellow("https://nodejs.org/en/download")}
|
|
67
|
-
`}}}});var block_svelte_webpack5_exports={};__export(block_svelte_webpack5_exports,{blocker:()=>blocker4});var import_picocolors31,import_ts_dedent26,blocker4,init_block_svelte_webpack5=__esm({"src/autoblock/block-svelte-webpack5.ts"(){"use strict";import_picocolors31=__toESM(require_picocolors(),1),import_ts_dedent26=require("ts-dedent");init_types();blocker4={id:"svelteWebpack5Removal",async check({packageJson}){return"@storybook/svelte-webpack5"in{...packageJson.dependencies,...packageJson.devDependencies}},log(){return import_ts_dedent26.dedent`
|
|
68
|
-
${import_picocolors31.default.bold("@storybook/svelte-webpack5")} is no longer supported in Storybook 9.
|
|
69
|
-
|
|
70
|
-
You need to migrate to ${import_picocolors31.default.bold("@storybook/svelte-vite")} instead.
|
|
71
|
-
|
|
72
|
-
Please follow the setup guide for @storybook/svelte-vite:
|
|
73
|
-
${import_picocolors31.default.yellow("https://storybook.js.org/docs/get-started/frameworks/svelte-vite")}
|
|
61
|
+
You can upgrade to version ${nextMajor} by running:
|
|
62
|
+
${import_node_logger2.CLI_COLORS.info(`npx storybook@${nextMajor} upgrade`)}
|
|
63
|
+
`,link:`https://storybook.js.org/docs/${nextMajor}/migration-guide`}}throw new Error("No message found")}}}});var block_experimental_addon_test_exports={};__export(block_experimental_addon_test_exports,{blocker:()=>blocker5});var import_semver4,import_ts_dedent3,blocker5,init_block_experimental_addon_test=__esm({"src/autoblock/block-experimental-addon-test.ts"(){"use strict";import_semver4=__toESM(require_semver2(),1),import_ts_dedent3=require("ts-dedent");init_types();blocker5={id:"experimentalAddonTestVitest",async check({packageManager}){if(!await packageManager.getInstalledVersion("@storybook/experimental-addon-test"))return!1;let vitestVersion=await packageManager.getInstalledVersion("vitest");return vitestVersion?import_semver4.default.lt(vitestVersion,"3.0.0"):!1},log(){return{title:"Experimental Addon Test Vitest",message:import_ts_dedent3.dedent`
|
|
64
|
+
@storybook/experimental-addon-test is being stabilized in Storybook 9.
|
|
74
65
|
|
|
75
|
-
|
|
76
|
-
`}}}});var block_major_version_exports={};__export(block_major_version_exports,{blocker:()=>blocker5,checkUpgrade:()=>checkUpgrade});function checkUpgrade(currentVersion,targetVersion){if(!currentVersion||!targetVersion)return"ok";let current=(0,import_semver10.parse)(currentVersion),target=(0,import_semver10.parse)(targetVersion);return!current||!target||(0,import_semver10.prerelease)(currentVersion)||(0,import_semver10.prerelease)(targetVersion)||current.major===0||target.major===0?"ok":(0,import_semver10.gt)(currentVersion,targetVersion)?"downgrade":target.major-current.major>1?"gap-too-large":"ok"}var import_cli3,import_common23,import_picocolors32,import_semver10,import_ts_dedent27,blocker5,init_block_major_version=__esm({"src/autoblock/block-major-version.ts"(){"use strict";import_cli3=require("storybook/internal/cli"),import_common23=require("storybook/internal/common"),import_picocolors32=__toESM(require_picocolors(),1),import_semver10=require("semver"),import_ts_dedent27=require("ts-dedent");init_types();blocker5={id:"major-version-gap",async check(options){let{packageManager}=options,packageJson=await packageManager.retrievePackageJson();try{let current=(0,import_cli3.getStorybookVersionSpecifier)(packageJson);if(!current)return!1;let target=import_common23.versions.storybook,result=checkUpgrade(current,target);return result==="ok"?!1:{currentVersion:current,reason:result}}catch{return!1}},log(options,data){let coercedVersion=(0,import_semver10.coerce)(data.currentVersion);if(data.reason==="downgrade")return import_ts_dedent27.dedent`
|
|
77
|
-
${import_picocolors32.default.red("Downgrade Not Supported")}
|
|
78
|
-
Your Storybook version (v${data.currentVersion}) is newer than the target release (v${import_common23.versions.storybook}).
|
|
79
|
-
Downgrading is not supported.
|
|
80
|
-
|
|
81
|
-
For more information about upgrading and version compatibility, visit:
|
|
82
|
-
${import_picocolors32.default.cyan("https://storybook.js.org/docs/configure/upgrading")}`;let message=import_ts_dedent27.dedent`
|
|
83
|
-
${import_picocolors32.default.red("Major Version Gap Detected")}
|
|
84
|
-
Your Storybook version (v${data.currentVersion}) is more than one major version behind the target release (v${import_common23.versions.storybook}).
|
|
85
|
-
Please upgrade one major version at a time.`;if(coercedVersion){let nextMajor=(0,import_semver10.major)(coercedVersion)+1,cmd=`npx storybook@${nextMajor} upgrade`;return import_ts_dedent27.dedent`
|
|
86
|
-
${message}
|
|
87
|
-
|
|
88
|
-
You can upgrade to version ${nextMajor} by running:
|
|
89
|
-
${import_picocolors32.default.cyan(cmd)}
|
|
90
|
-
|
|
91
|
-
For more information about upgrading, visit:
|
|
92
|
-
${import_picocolors32.default.cyan("https://storybook.js.org/docs/configure/upgrading")}`}return import_ts_dedent27.dedent`
|
|
93
|
-
${message}
|
|
94
|
-
|
|
95
|
-
For more information about upgrading, visit:
|
|
96
|
-
${import_picocolors32.default.cyan("https://storybook.js.org/docs/configure/upgrading")}`}}}});var block_experimental_addon_test_exports={};__export(block_experimental_addon_test_exports,{blocker:()=>blocker6});var import_picocolors33,import_semver11,import_ts_dedent28,blocker6,init_block_experimental_addon_test=__esm({"src/autoblock/block-experimental-addon-test.ts"(){"use strict";import_picocolors33=__toESM(require_picocolors(),1),import_semver11=__toESM(require("semver"),1),import_ts_dedent28=require("ts-dedent");init_types();blocker6={id:"experimentalAddonTestVitest",async check({packageJson,packageManager}){if(!("@storybook/experimental-addon-test"in{...packageJson.dependencies,...packageJson.devDependencies}))return!1;let vitestVersion=await packageManager.getInstalledVersion("vitest");return vitestVersion?import_semver11.default.lt(vitestVersion,"3.0.0"):!1},log(){return import_ts_dedent28.dedent`
|
|
97
|
-
${import_picocolors33.default.magenta("@storybook/experimental-addon-test")} is being stabilized in Storybook 9.
|
|
98
|
-
|
|
99
|
-
The addon will be renamed to ${import_picocolors33.default.magenta("@storybook/addon-vitest")} and as part of this stabilization, we have dropped support for Vitest 2.
|
|
66
|
+
The addon will be renamed to @storybook/addon-vitest and as part of this stabilization, we have dropped support for Vitest 2.
|
|
100
67
|
|
|
101
68
|
You have two options to proceed:
|
|
102
|
-
1. Remove
|
|
103
|
-
2. Upgrade to
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
69
|
+
1. Remove @storybook/experimental-addon-test if you don't need it
|
|
70
|
+
2. Upgrade to Vitest 3 to continue using the addon
|
|
71
|
+
`,link:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#experimental-addon-test-vitest"}}}}});var blockers,autoblock,init_autoblock=__esm({"src/autoblock/index.ts"(){"use strict";blockers=()=>[Promise.resolve().then(()=>(init_block_dependencies_versions(),block_dependencies_versions_exports)),Promise.resolve().then(()=>(init_block_node_version(),block_node_version_exports)),Promise.resolve().then(()=>(init_block_webpack5_frameworks(),block_webpack5_frameworks_exports)),Promise.resolve().then(()=>(init_block_major_version(),block_major_version_exports)),Promise.resolve().then(()=>(init_block_experimental_addon_test(),block_experimental_addon_test_exports))],autoblock=async(options,list=blockers())=>list.length===0?null:await Promise.all(list.map(async i=>{let blocker6=(await i).blocker;return{result:await blocker6.check(options),blocker:blocker6}}))}});var p_limit_exports={};__export(p_limit_exports,{default:()=>pLimit2,limitFunction:()=>limitFunction});function pLimit2(concurrency){validateConcurrency(concurrency);let queue=new Queue,activeCount=0,resumeNext=()=>{activeCount<concurrency&&queue.size>0&&(queue.dequeue()(),activeCount++)},next=()=>{activeCount--,resumeNext()},run=async(function_,resolve,arguments_)=>{let result=(async()=>function_(...arguments_))();resolve(result);try{await result}catch{}next()},enqueue=(function_,resolve,arguments_)=>{new Promise(internalResolve=>{queue.enqueue(internalResolve)}).then(run.bind(void 0,function_,resolve,arguments_)),(async()=>(await Promise.resolve(),activeCount<concurrency&&resumeNext()))()},generator=(function_,...arguments_)=>new Promise(resolve=>{enqueue(function_,resolve,arguments_)});return Object.defineProperties(generator,{activeCount:{get:()=>activeCount},pendingCount:{get:()=>queue.size},clearQueue:{value(){queue.clear()}},concurrency:{get:()=>concurrency,set(newConcurrency){validateConcurrency(newConcurrency),concurrency=newConcurrency,queueMicrotask(()=>{for(;activeCount<concurrency&&queue.size>0;)resumeNext()})}}}),generator}function limitFunction(function_,option){let{concurrency}=option,limit=pLimit2(concurrency);return(...arguments_)=>limit(()=>function_(...arguments_))}function validateConcurrency(concurrency){if(!((Number.isInteger(concurrency)||concurrency===Number.POSITIVE_INFINITY)&&concurrency>0))throw new TypeError("Expected `concurrency` to be a number from 1 and up")}var init_p_limit2=__esm({"../../node_modules/p-limit/index.js"(){"use strict";init_yocto_queue()}});function validateVersion(version2){if(!version2)throw new import_server_errors.UpgradeStorybookUnknownCurrentVersionError}var import_common2,import_common3,import_core_server,import_node_logger3,import_server_errors,import_picocolors,import_semver5,STORYBOOK_DIR_PATTERN,isSuccessResult,isErrorResult,getVersionModifier,isCanaryVersion,validateUpgradeCompatibility,findStorybookProjects,processProject,collectProjects,generateUpgradeSpecs,upgradeStorybookDependencies,formatProjectDirectories,shortenPath,handleMultipleProjects,getProjects,findFilesUp,getStoriesPathsFromConfig,init_util=__esm({"src/util.ts"(){"use strict";import_common2=require("storybook/internal/common"),import_common3=require("storybook/internal/common"),import_core_server=require("storybook/internal/core-server"),import_node_logger3=require("storybook/internal/node-logger"),import_server_errors=require("storybook/internal/server-errors");init_boxen();init_find_up();init_globby();import_picocolors=__toESM(require_picocolors(),1),import_semver5=__toESM(require_semver2(),1);init_autoblock();init_mainConfigFile();STORYBOOK_DIR_PATTERN=["**/.storybook","**/.rnstorybook"],isSuccessResult=result=>!("error"in result),isErrorResult=result=>"error"in result,getVersionModifier=versionSpecifier=>{if(!versionSpecifier||typeof versionSpecifier!="string")return{modifier:"",useFixed:!0};let firstPart=versionSpecifier.split(/\s*\|\|\s*/)[0]?.trim();if(!firstPart)return{modifier:"",useFixed:!0};let modifier=firstPart.match(/^([~^><=]+)/)?.[1]??"";return{modifier,useFixed:!modifier}},isCanaryVersion=version2=>version2.startsWith("0.0.0")||version2.startsWith("portal:")||version2.startsWith("workspace:");validateUpgradeCompatibility=(currentVersion,beforeVersion,isCanary)=>{if(!isCanary&&(0,import_semver5.lt)(currentVersion,beforeVersion))throw new import_server_errors.UpgradeStorybookToLowerVersionError({beforeVersion,currentVersion})},findStorybookProjects=async(cwd=process.cwd())=>{try{import_node_logger3.logger.debug("Finding Storybook projects...");let storybookDirs=await globby(STORYBOOK_DIR_PATTERN,{cwd,dot:!0,gitignore:!0,absolute:!0,onlyDirectories:!0,followSymbolicLinks:!1});return import_node_logger3.logger.debug(`Found ${storybookDirs.length} Storybook projects`),storybookDirs.length===0?[await import_node_logger3.prompt.text({message:"No Storybook projects were found. Please enter the path to the .storybook directory for the project you want to upgrade."})]:storybookDirs}catch(error){throw import_node_logger3.logger.error("Failed to find Storybook projects"),error}},processProject=async({configDir,options,currentCLIVersion,onScanStart})=>{try{onScanStart();let name=configDir.replace((0,import_common3.getProjectRoot)(),"");import_node_logger3.logger.debug("Getting Storybook data...");let{configDir:resolvedConfigDir,mainConfig,mainConfigPath,packageManager,previewConfigPath,storiesPaths,storybookVersion:beforeVersion}=await getStorybookData({configDir,cache:!0});import_node_logger3.logger.debug(`${name} - Validating before version... ${beforeVersion}`),validateVersion(beforeVersion);let isCanary=isCanaryVersion(currentCLIVersion)||isCanaryVersion(beforeVersion);import_node_logger3.logger.debug(`${name} - Validating upgrade compatibility...`),validateUpgradeCompatibility(currentCLIVersion,beforeVersion,isCanary),import_node_logger3.logger.debug(`${name} - Fetching NPM version information...`);let[latestCLIVersionOnNPM,latestPrereleaseCLIVersionOnNPM]=await Promise.all([packageManager.latestVersion("storybook"),packageManager.latestVersion("storybook@next")]),isCLIOutdated=(0,import_semver5.lt)(currentCLIVersion,latestCLIVersionOnNPM),isCLIExactLatest=currentCLIVersion===latestCLIVersionOnNPM,isCLIPrerelease=(0,import_semver5.prerelease)(currentCLIVersion)!==null,isCLIExactPrerelease=currentCLIVersion===latestPrereleaseCLIVersionOnNPM,isUpgrade=(0,import_semver5.lt)(beforeVersion,currentCLIVersion),autoblockerCheckResults=null;return typeof mainConfig!="boolean"&&typeof mainConfigPath<"u"&&!options.force&&(import_node_logger3.logger.debug(`${name} - Evaluating blockers...`),autoblockerCheckResults=await autoblock({packageManager,configDir:resolvedConfigDir,mainConfig,mainConfigPath})),{configDir:resolvedConfigDir,mainConfig,mainConfigPath,packageManager,isCanary,isCLIOutdated,isCLIPrerelease,isCLIExactLatest,isUpgrade,beforeVersion,currentCLIVersion,latestCLIVersionOnNPM,isCLIExactPrerelease,autoblockerCheckResults,previewConfigPath,storiesPaths}}catch(error){return import_node_logger3.logger.debug(String(error)),{configDir,error}}},collectProjects=async(options,configDirs,onProjectScanStart)=>{let{default:pLimit3}=await Promise.resolve().then(()=>(init_p_limit2(),p_limit_exports)),currentCLIVersion=import_common3.versions.storybook,limit=pLimit3(5),projectPromises=configDirs.map(configDir=>limit(()=>processProject({configDir,options,currentCLIVersion,onScanStart:()=>onProjectScanStart()})));return await Promise.all(projectPromises)},generateUpgradeSpecs=async(dependencies={},config)=>{let{packageManager,isCanary,isCLIOutdated,isCLIPrerelease,isCLIExactPrerelease,isCLIExactLatest}=config,storybookCoreUpgrades=Object.keys(dependencies).filter(dependency=>dependency in import_common3.versions).map(dependency=>{let versionSpec=dependencies[dependency];if(!versionSpec)return`${dependency}@${import_common3.versions[dependency]}`;let{modifier}=getVersionModifier(versionSpec);return`${dependency}@${isCLIOutdated||isCanary?"":modifier}${import_common3.versions[dependency]}`}),storybookSatelliteUpgrades=[];if(isCLIExactPrerelease||isCLIExactLatest){let satelliteDependencies=Object.keys(dependencies).filter(import_common3.isSatelliteAddon);if(satelliteDependencies.length>0)try{let upgradePromises=satelliteDependencies.map(async dependency=>{try{let packageName=isCLIPrerelease?`${dependency}@next`:dependency,mostRecentVersion=await packageManager.latestVersion(packageName);if(!mostRecentVersion)return null;let{modifier}=getVersionModifier(dependencies[dependency]??"");return`${dependency}@${modifier}${mostRecentVersion}`}catch{return null}});storybookSatelliteUpgrades=(await Promise.all(upgradePromises)).filter(result=>result!==null)}catch{import_node_logger3.logger.warn("Failed to fetch satellite dependencies")}}return[...storybookCoreUpgrades,...storybookSatelliteUpgrades]},upgradeStorybookDependencies=async config=>{let{packageManager}=config;for(let packageJsonPath of packageManager.packageJsonPaths){let packageJson=import_common2.JsPackageManager.getPackageJson(packageJsonPath),[upgradedDependencies,upgradedDevDependencies,upgradedPeerDependencies]=await Promise.all([generateUpgradeSpecs(packageJson.dependencies,config),generateUpgradeSpecs(packageJson.devDependencies,config),generateUpgradeSpecs(packageJson.peerDependencies,config)]);import_node_logger3.logger.debug(JSON.stringify({upgradedDependencies},null,2)),import_node_logger3.logger.debug(JSON.stringify({upgradedDevDependencies},null,2)),import_node_logger3.logger.debug(JSON.stringify({upgradedPeerDependencies},null,2)),await packageManager.addDependencies({type:"dependencies",skipInstall:!0,packageJsonInfo:import_common2.JsPackageManager.getPackageJsonInfo(packageJsonPath)},upgradedDependencies),await packageManager.addDependencies({type:"devDependencies",skipInstall:!0,packageJsonInfo:import_common2.JsPackageManager.getPackageJsonInfo(packageJsonPath)},upgradedDevDependencies),await packageManager.addDependencies({type:"peerDependencies",skipInstall:!0,packageJsonInfo:import_common2.JsPackageManager.getPackageJsonInfo(packageJsonPath)},upgradedPeerDependencies)}},formatProjectDirectories=(projectData,modifier)=>projectData.length===0?"":projectData.map(project=>project.configDir).map(dir=>`${modifier} ${import_picocolors.default.cyan(shortenPath(dir))}`).join(`
|
|
72
|
+
`),shortenPath=path7=>{let gitRoot=(0,import_common3.getProjectRoot)();return path7.replace(gitRoot,"")},handleMultipleProjects=async(validProjects,errorProjects,detectedConfigDirs,yes)=>{let allPackageJsonPaths=validProjects.flatMap(data=>data.packageManager.packageJsonPaths).filter(import_common2.JsPackageManager.hasAnyStorybookDependency);if(new Set(allPackageJsonPaths).size!==allPackageJsonPaths.length){let projectsFoundMessage=["Multiple Storybook projects found. Storybook can only upgrade all projects at once:"];if(validProjects.length>0&&projectsFoundMessage.push(formatProjectDirectories(validProjects,import_node_logger3.logger.SYMBOLS.success)),errorProjects.length>0&&(import_node_logger3.logTracker.enableLogWriting(),projectsFoundMessage.push(`There were some errors while collecting data for the following projects:
|
|
73
|
+
${formatProjectDirectories(errorProjects,import_node_logger3.logger.SYMBOLS.error)}`,"","Full logs will be available in the Storybook debug logs at the end of the run.")),import_node_logger3.logger.log(projectsFoundMessage.join(`
|
|
74
|
+
`)),!(yes||await import_node_logger3.prompt.confirm({message:"Continue with the upgrade?",initialValue:!0})))throw new import_common2.HandledError("Upgrade cancelled by user");return[...validProjects]}if(detectedConfigDirs.length>1){let selectedConfigDirs=await import_node_logger3.prompt.multiselect({message:"Select which projects to upgrade",options:detectedConfigDirs.map(configDir=>({label:shortenPath(configDir),value:configDir}))});return validProjects.filter(data=>selectedConfigDirs.includes(data.configDir))}},getProjects=async options=>{try{let task=import_node_logger3.prompt.spinner({id:"detect-projects"});task.start("Detecting projects...");let detectedConfigDirs=options.configDir??[];(!options.configDir||options.configDir.length===0)&&(detectedConfigDirs=await findStorybookProjects());let count=0,projects=await collectProjects(options,detectedConfigDirs,()=>task.message(`Detecting projects: ${++count} projects`));task.stop(`${projects.length} ${projects.length>1?"projects":"project"} detected`);let validProjects=projects.filter(isSuccessResult),errorProjects=projects.filter(isErrorResult);if(import_node_logger3.logger.debug(`Found ${validProjects.length} valid projects and ${errorProjects.length} error projects`),validProjects.length===1)return{allProjects:validProjects,selectedProjects:validProjects};if(validProjects.length===0&&errorProjects.length>0){let errorMessage=errorProjects.map(project=>`${shortenPath(project.configDir)}:
|
|
75
|
+
${project.error.stack||project.error.message}`).join(`
|
|
76
|
+
`);throw new Error(`\u274C Storybook found errors while collecting data for the following projects:
|
|
77
|
+
${errorMessage}
|
|
78
|
+
Please fix the errors and run the upgrade command again.`)}let selectedProjects=await handleMultipleProjects(validProjects,errorProjects,detectedConfigDirs,options.yes);return selectedProjects?{allProjects:validProjects,selectedProjects}:void 0}catch(error){throw error instanceof import_common2.HandledError||import_node_logger3.logger.error("Failed to get projects"),error}},findFilesUp=(matchers,cwd)=>{let matchingFiles=[];return findUpMultipleSync(directory=>{matchingFiles.push(...globbySync(matchers,{gitignore:!0,cwd:directory}))},{cwd,stopAt:(0,import_common3.getProjectRoot)()}),matchingFiles},getStoriesPathsFromConfig=async({stories,configDir,workingDir})=>{if(stories.length===0)return[];let normalizedStories=(0,import_common2.normalizeStories)(stories,{configDir,workingDir});return(await import_core_server.StoryIndexGenerator.findMatchingFilesForSpecifiers(normalizedStories,workingDir,!0)).flatMap(([specifier,cache])=>import_core_server.StoryIndexGenerator.storyFileNames(new Map([[specifier,cache]])))}}});var import_node_path6,import_common4,import_common5,import_csf_tools,import_node_logger4,import_picocolors2,import_ts_dedent4,getFrameworkPackageName,getStorybookData,updateMainConfig,init_mainConfigFile=__esm({"src/automigrate/helpers/mainConfigFile.ts"(){"use strict";import_node_path6=require("path"),import_common4=require("storybook/internal/common"),import_common5=require("storybook/internal/common"),import_csf_tools=require("storybook/internal/csf-tools"),import_node_logger4=require("storybook/internal/node-logger"),import_picocolors2=__toESM(require_picocolors(),1),import_ts_dedent4=require("ts-dedent");init_util();getFrameworkPackageName=mainConfig=>{let packageNameOrPath=typeof mainConfig?.framework=="string"?mainConfig.framework:mainConfig?.framework?.name;return packageNameOrPath?(0,import_common4.extractProperFrameworkName)(packageNameOrPath):null},getStorybookData=async({configDir:userDefinedConfigDir,cwd,packageManagerName,cache=!1})=>{import_node_logger4.logger.debug("Getting Storybook info...");let{mainConfigPath,version:storybookVersionSpecifier,configDir:configDirFromScript,previewConfigPath}=(0,import_common4.getStorybookInfo)(userDefinedConfigDir),configDir=userDefinedConfigDir||configDirFromScript||".storybook";import_node_logger4.logger.debug("Loading main config...");let mainConfig;try{mainConfig=await(0,import_common4.loadMainConfig)({configDir,noCache:!cache,cwd})}catch(err){throw new Error(import_ts_dedent4.dedent`Unable to find or evaluate ${import_picocolors2.default.blue(mainConfigPath)}: ${String(err)}`)}let workingDir=(0,import_node_path6.isAbsolute)(configDir)?(0,import_node_path6.dirname)(configDir):(0,import_node_path6.dirname)((0,import_node_path6.join)(cwd??process.cwd(),configDir));import_node_logger4.logger.debug("Getting stories paths...");let storiesPaths=await getStoriesPathsFromConfig({stories:mainConfig.stories,configDir,workingDir});import_node_logger4.logger.debug("Getting package manager...");let packageManager=import_common4.JsPackageManagerFactory.getPackageManager({force:packageManagerName,configDir,storiesPaths});import_node_logger4.logger.debug("Getting Storybook version...");let storybookVersion=await(0,import_common5.getCoercedStorybookVersion)(packageManager);return{configDir,mainConfig,storybookVersionSpecifier,storybookVersion,mainConfigPath,previewConfigPath,packageManager,storiesPaths}},updateMainConfig=async({mainConfigPath,dryRun},callback)=>{try{let main=await(0,import_csf_tools.readConfig)(mainConfigPath);await callback(main),dryRun||await(0,import_csf_tools.writeConfig)(main)}catch(e){import_node_logger4.logger.log(`\u274C The migration failed to update your ${import_picocolors2.default.blue(mainConfigPath)} on your behalf because of the following error:
|
|
79
|
+
${e}
|
|
80
|
+
`),import_node_logger4.logger.log(`\u26A0\uFE0F Storybook automigrations are based on AST parsing and it's possible that your ${import_picocolors2.default.blue(mainConfigPath)} file contains a non-standard format (e.g. your export is not an object) or that there was an error when parsing dynamic values (e.g. "require" calls, or usage of environment variables). When your main config is non-standard, automigrations are unfortunately not possible. Please follow the instructions given previously and follow the documentation to make the updates manually.`)}}}});var require_windows=__commonJS({"../../node_modules/isexe/windows.js"(exports2,module2){"use strict";module2.exports=isexe;isexe.sync=sync;var fs7=require("fs");function checkPathExt(path7,options){var pathext=options.pathExt!==void 0?options.pathExt:process.env.PATHEXT;if(!pathext||(pathext=pathext.split(";"),pathext.indexOf("")!==-1))return!0;for(var i=0;i<pathext.length;i++){var p=pathext[i].toLowerCase();if(p&&path7.substr(-p.length).toLowerCase()===p)return!0}return!1}function checkStat(stat,path7,options){return!stat.isSymbolicLink()&&!stat.isFile()?!1:checkPathExt(path7,options)}function isexe(path7,options,cb){fs7.stat(path7,function(er,stat){cb(er,er?!1:checkStat(stat,path7,options))})}function sync(path7,options){return checkStat(fs7.statSync(path7),path7,options)}}});var require_mode=__commonJS({"../../node_modules/isexe/mode.js"(exports2,module2){"use strict";module2.exports=isexe;isexe.sync=sync;var fs7=require("fs");function isexe(path7,options,cb){fs7.stat(path7,function(er,stat){cb(er,er?!1:checkStat(stat,options))})}function sync(path7,options){return checkStat(fs7.statSync(path7),options)}function checkStat(stat,options){return stat.isFile()&&checkMode(stat,options)}function checkMode(stat,options){var mod=stat.mode,uid=stat.uid,gid=stat.gid,myUid=options.uid!==void 0?options.uid:process.getuid&&process.getuid(),myGid=options.gid!==void 0?options.gid:process.getgid&&process.getgid(),u=parseInt("100",8),g=parseInt("010",8),o=parseInt("001",8),ug=u|g,ret=mod&o||mod&g&&gid===myGid||mod&u&&uid===myUid||mod&ug&&myUid===0;return ret}}});var require_isexe=__commonJS({"../../node_modules/isexe/index.js"(exports2,module2){"use strict";var fs7=require("fs"),core;process.platform==="win32"||global.TESTING_WINDOWS?core=require_windows():core=require_mode();module2.exports=isexe;isexe.sync=sync;function isexe(path7,options,cb){if(typeof options=="function"&&(cb=options,options={}),!cb){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(resolve,reject){isexe(path7,options||{},function(er,is){er?reject(er):resolve(is)})})}core(path7,options||{},function(er,is){er&&(er.code==="EACCES"||options&&options.ignoreErrors)&&(er=null,is=!1),cb(er,is)})}function sync(path7,options){try{return core.sync(path7,options||{})}catch(er){if(options&&options.ignoreErrors||er.code==="EACCES")return!1;throw er}}}});var require_which=__commonJS({"../../node_modules/which/which.js"(exports2,module2){"use strict";var isWindows=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",path7=require("path"),COLON=isWindows?";":":",isexe=require_isexe(),getNotFoundError=cmd=>Object.assign(new Error(`not found: ${cmd}`),{code:"ENOENT"}),getPathInfo=(cmd,opt)=>{let colon=opt.colon||COLON,pathEnv=cmd.match(/\//)||isWindows&&cmd.match(/\\/)?[""]:[...isWindows?[process.cwd()]:[],...(opt.path||process.env.PATH||"").split(colon)],pathExtExe=isWindows?opt.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",pathExt=isWindows?pathExtExe.split(colon):[""];return isWindows&&cmd.indexOf(".")!==-1&&pathExt[0]!==""&&pathExt.unshift(""),{pathEnv,pathExt,pathExtExe}},which=(cmd,opt,cb)=>{typeof opt=="function"&&(cb=opt,opt={}),opt||(opt={});let{pathEnv,pathExt,pathExtExe}=getPathInfo(cmd,opt),found=[],step=i=>new Promise((resolve,reject)=>{if(i===pathEnv.length)return opt.all&&found.length?resolve(found):reject(getNotFoundError(cmd));let ppRaw=pathEnv[i],pathPart=/^".*"$/.test(ppRaw)?ppRaw.slice(1,-1):ppRaw,pCmd=path7.join(pathPart,cmd),p=!pathPart&&/^\.[\\\/]/.test(cmd)?cmd.slice(0,2)+pCmd:pCmd;resolve(subStep(p,i,0))}),subStep=(p,i,ii)=>new Promise((resolve,reject)=>{if(ii===pathExt.length)return resolve(step(i+1));let ext=pathExt[ii];isexe(p+ext,{pathExt:pathExtExe},(er,is)=>{if(!er&&is)if(opt.all)found.push(p+ext);else return resolve(p+ext);return resolve(subStep(p,i,ii+1))})});return cb?step(0).then(res=>cb(null,res),cb):step(0)},whichSync=(cmd,opt)=>{opt=opt||{};let{pathEnv,pathExt,pathExtExe}=getPathInfo(cmd,opt),found=[];for(let i=0;i<pathEnv.length;i++){let ppRaw=pathEnv[i],pathPart=/^".*"$/.test(ppRaw)?ppRaw.slice(1,-1):ppRaw,pCmd=path7.join(pathPart,cmd),p=!pathPart&&/^\.[\\\/]/.test(cmd)?cmd.slice(0,2)+pCmd:pCmd;for(let j=0;j<pathExt.length;j++){let cur=p+pathExt[j];try{if(isexe.sync(cur,{pathExt:pathExtExe}))if(opt.all)found.push(cur);else return cur}catch{}}}if(opt.all&&found.length)return found;if(opt.nothrow)return null;throw getNotFoundError(cmd)};module2.exports=which;which.sync=whichSync}});var require_path_key=__commonJS({"../../node_modules/path-key/index.js"(exports2,module2){"use strict";var pathKey=(options={})=>{let environment=options.env||process.env;return(options.platform||process.platform)!=="win32"?"PATH":Object.keys(environment).reverse().find(key=>key.toUpperCase()==="PATH")||"Path"};module2.exports=pathKey;module2.exports.default=pathKey}});var require_resolveCommand=__commonJS({"../../node_modules/cross-spawn/lib/util/resolveCommand.js"(exports2,module2){"use strict";var path7=require("path"),which=require_which(),getPathKey=require_path_key();function resolveCommandAttempt(parsed,withoutPathExt){let env=parsed.options.env||process.env,cwd=process.cwd(),hasCustomCwd=parsed.options.cwd!=null,shouldSwitchCwd=hasCustomCwd&&process.chdir!==void 0&&!process.chdir.disabled;if(shouldSwitchCwd)try{process.chdir(parsed.options.cwd)}catch{}let resolved;try{resolved=which.sync(parsed.command,{path:env[getPathKey({env})],pathExt:withoutPathExt?path7.delimiter:void 0})}catch{}finally{shouldSwitchCwd&&process.chdir(cwd)}return resolved&&(resolved=path7.resolve(hasCustomCwd?parsed.options.cwd:"",resolved)),resolved}function resolveCommand(parsed){return resolveCommandAttempt(parsed)||resolveCommandAttempt(parsed,!0)}module2.exports=resolveCommand}});var require_escape=__commonJS({"../../node_modules/cross-spawn/lib/util/escape.js"(exports2,module2){"use strict";var metaCharsRegExp=/([()\][%!^"`<>&|;, *?])/g;function escapeCommand(arg){return arg=arg.replace(metaCharsRegExp,"^$1"),arg}function escapeArgument(arg,doubleEscapeMetaChars){return arg=`${arg}`,arg=arg.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),arg=arg.replace(/(?=(\\+?)?)\1$/,"$1$1"),arg=`"${arg}"`,arg=arg.replace(metaCharsRegExp,"^$1"),doubleEscapeMetaChars&&(arg=arg.replace(metaCharsRegExp,"^$1")),arg}module2.exports.command=escapeCommand;module2.exports.argument=escapeArgument}});var require_shebang_regex=__commonJS({"../../node_modules/shebang-regex/index.js"(exports2,module2){"use strict";module2.exports=/^#!(.*)/}});var require_shebang_command=__commonJS({"../../node_modules/shebang-command/index.js"(exports2,module2){"use strict";var shebangRegex=require_shebang_regex();module2.exports=(string="")=>{let match=string.match(shebangRegex);if(!match)return null;let[path7,argument]=match[0].replace(/#! ?/,"").split(" "),binary=path7.split("/").pop();return binary==="env"?argument:argument?`${binary} ${argument}`:binary}}});var require_readShebang=__commonJS({"../../node_modules/cross-spawn/lib/util/readShebang.js"(exports2,module2){"use strict";var fs7=require("fs"),shebangCommand=require_shebang_command();function readShebang(command2){let buffer=Buffer.alloc(150),fd;try{fd=fs7.openSync(command2,"r"),fs7.readSync(fd,buffer,0,150,0),fs7.closeSync(fd)}catch{}return shebangCommand(buffer.toString())}module2.exports=readShebang}});var require_parse4=__commonJS({"../../node_modules/cross-spawn/lib/parse.js"(exports2,module2){"use strict";var path7=require("path"),resolveCommand=require_resolveCommand(),escape=require_escape(),readShebang=require_readShebang(),isWin=process.platform==="win32",isExecutableRegExp=/\.(?:com|exe)$/i,isCmdShimRegExp=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function detectShebang(parsed){parsed.file=resolveCommand(parsed);let shebang=parsed.file&&readShebang(parsed.file);return shebang?(parsed.args.unshift(parsed.file),parsed.command=shebang,resolveCommand(parsed)):parsed.file}function parseNonShell(parsed){if(!isWin)return parsed;let commandFile=detectShebang(parsed),needsShell=!isExecutableRegExp.test(commandFile);if(parsed.options.forceShell||needsShell){let needsDoubleEscapeMetaChars=isCmdShimRegExp.test(commandFile);parsed.command=path7.normalize(parsed.command),parsed.command=escape.command(parsed.command),parsed.args=parsed.args.map(arg=>escape.argument(arg,needsDoubleEscapeMetaChars));let shellCommand=[parsed.command].concat(parsed.args).join(" ");parsed.args=["/d","/s","/c",`"${shellCommand}"`],parsed.command=process.env.comspec||"cmd.exe",parsed.options.windowsVerbatimArguments=!0}return parsed}function parse2(command2,args,options){args&&!Array.isArray(args)&&(options=args,args=null),args=args?args.slice(0):[],options=Object.assign({},options);let parsed={command:command2,args,options,file:void 0,original:{command:command2,args}};return options.shell?parsed:parseNonShell(parsed)}module2.exports=parse2}});var require_enoent=__commonJS({"../../node_modules/cross-spawn/lib/enoent.js"(exports2,module2){"use strict";var isWin=process.platform==="win32";function notFoundError(original,syscall){return Object.assign(new Error(`${syscall} ${original.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${syscall} ${original.command}`,path:original.command,spawnargs:original.args})}function hookChildProcess(cp,parsed){if(!isWin)return;let originalEmit=cp.emit;cp.emit=function(name,arg1){if(name==="exit"){let err=verifyENOENT(arg1,parsed);if(err)return originalEmit.call(cp,"error",err)}return originalEmit.apply(cp,arguments)}}function verifyENOENT(status,parsed){return isWin&&status===1&&!parsed.file?notFoundError(parsed.original,"spawn"):null}function verifyENOENTSync(status,parsed){return isWin&&status===1&&!parsed.file?notFoundError(parsed.original,"spawnSync"):null}module2.exports={hookChildProcess,verifyENOENT,verifyENOENTSync,notFoundError}}});var require_cross_spawn=__commonJS({"../../node_modules/cross-spawn/index.js"(exports2,module2){"use strict";var cp=require("child_process"),parse2=require_parse4(),enoent=require_enoent();function spawn(command2,args,options){let parsed=parse2(command2,args,options),spawned=cp.spawn(parsed.command,parsed.args,parsed.options);return enoent.hookChildProcess(spawned,parsed),spawned}function spawnSync3(command2,args,options){let parsed=parse2(command2,args,options),result=cp.spawnSync(parsed.command,parsed.args,parsed.options);return result.error=result.error||enoent.verifyENOENTSync(result.status,parsed),result}module2.exports=spawn;module2.exports.spawn=spawn;module2.exports.sync=spawnSync3;module2.exports._parse=parse2;module2.exports._enoent=enoent}});var import_cli3=require("storybook/internal/cli"),import_common25=require("storybook/internal/common"),import_core_server3=require("storybook/internal/core-server"),import_node_logger24=require("storybook/internal/node-logger"),import_telemetry2=require("storybook/internal/telemetry"),import_commander=require("commander"),import_envinfo=__toESM(require_envinfo(),1);var array=[],characterCodeCache=[];function leven(first,second){if(first===second)return 0;let swap=first;first.length>second.length&&(first=second,second=swap);let firstLength=first.length,secondLength=second.length;for(;firstLength>0&&first.charCodeAt(~-firstLength)===second.charCodeAt(~-secondLength);)firstLength--,secondLength--;let start=0;for(;start<firstLength&&first.charCodeAt(start)===second.charCodeAt(start);)start++;if(firstLength-=start,secondLength-=start,firstLength===0)return secondLength;let bCharacterCode,result,temporary,temporary2,index=0,index2=0;for(;index<firstLength;)characterCodeCache[index]=first.charCodeAt(start+index),array[index]=++index;for(;index2<secondLength;)for(bCharacterCode=second.charCodeAt(start+index2),temporary=index2++,result=index2,index=0;index<firstLength;index++)temporary2=bCharacterCode===characterCodeCache[index]?temporary:temporary+1,temporary=array[index],result=array[index]=temporary>result?temporary2>result?result+1:temporary2:temporary2>temporary?temporary+1:temporary2;return result}var import_picocolors19=__toESM(require_picocolors(),1);var version="9.1.0-alpha.7";var import_node_path7=require("path"),import_common6=require("storybook/internal/common"),import_csf_tools2=require("storybook/internal/csf-tools"),import_node_logger5=require("storybook/internal/node-logger"),import_semver6=__toESM(require_semver2(),1),import_ts_dedent5=require("ts-dedent");var import_babel=require("storybook/internal/babel"),defaultRequireWrapperName="getAbsolutePath";function doesVariableOrFunctionDeclarationExist(node,name){return import_babel.types.isVariableDeclaration(node)&&node.declarations.length===1&&import_babel.types.isVariableDeclarator(node.declarations[0])&&import_babel.types.isIdentifier(node.declarations[0].id)&&node.declarations[0].id?.name===name||import_babel.types.isFunctionDeclaration(node)&&import_babel.types.isIdentifier(node.id)&&node.id.name===name}function getReferenceToRequireWrapper(config,value){return import_babel.types.callExpression(import_babel.types.identifier(getRequireWrapperName(config)??defaultRequireWrapperName),[import_babel.types.stringLiteral(value)])}function getRequireWrapperName(config){let declarationName=config.getBodyDeclarations().flatMap(node=>doesVariableOrFunctionDeclarationExist(node,"wrapForPnp")?["wrapForPnp"]:doesVariableOrFunctionDeclarationExist(node,defaultRequireWrapperName)?[defaultRequireWrapperName]:[]);return declarationName.length?declarationName[0]:null}function isRequireWrapperNecessary(node,cb=()=>{}){if(import_babel.types.isStringLiteral(node))return cb(node),!0;if(import_babel.types.isObjectExpression(node)){let nameProperty=node.properties.find(property=>import_babel.types.isObjectProperty(property)&&import_babel.types.isIdentifier(property.key)&&property.key.name==="name");if(nameProperty&&import_babel.types.isStringLiteral(nameProperty.value))return cb(nameProperty),!0}return import_babel.types.isArrayExpression(node)&&node.elements.some(element=>element&&isRequireWrapperNecessary(element))?(cb(node),!0):!1}function getFieldsForRequireWrapper(config){let frameworkNode=config.getFieldNode(["framework"]),builderNode=config.getFieldNode(["core","builder"]),rendererNode=config.getFieldNode(["core","renderer"]),addons=config.getFieldNode(["addons"]);return[...frameworkNode?[frameworkNode]:[],...builderNode?[builderNode]:[],...rendererNode?[rendererNode]:[],...addons&&import_babel.types.isArrayExpression(addons)?[addons]:[]]}function getRequireWrapperAsCallExpression(isConfigTypescript){let functionDeclaration={...import_babel.types.functionDeclaration(import_babel.types.identifier(defaultRequireWrapperName),[{...import_babel.types.identifier("value"),...isConfigTypescript?{typeAnnotation:import_babel.types.tsTypeAnnotation(import_babel.types.tSStringKeyword())}:{}}],import_babel.types.blockStatement([import_babel.types.returnStatement(import_babel.types.callExpression(import_babel.types.identifier("dirname"),[import_babel.types.callExpression(import_babel.types.memberExpression(import_babel.types.identifier("require"),import_babel.types.identifier("resolve")),[import_babel.types.callExpression(import_babel.types.identifier("join"),[import_babel.types.identifier("value"),import_babel.types.stringLiteral("package.json")])])]))])),...isConfigTypescript?{returnType:import_babel.types.tSTypeAnnotation(import_babel.types.tsAnyKeyword())}:{}};return import_babel.types.addComment(functionDeclaration,"leading",`*
|
|
107
81
|
* This function is used to resolve the absolute path of a package.
|
|
108
82
|
* It is needed in projects that use Yarn PnP or are set up within a monorepo.
|
|
109
|
-
`),functionDeclaration}function wrapValueWithRequireWrapper(config,node){isRequireWrapperNecessary(node,n=>{if(import_babel.types.isStringLiteral(n)){let wrapperNode=getReferenceToRequireWrapper(config,n.value);Object.keys(n).forEach(k=>{delete n[k]}),Object.keys(wrapperNode).forEach(k=>{n[k]=wrapperNode[k]})}import_babel.types.isObjectProperty(n)&&import_babel.types.isStringLiteral(n.value)&&(n.value=getReferenceToRequireWrapper(config,n.value.value)),import_babel.types.isArrayExpression(n)&&n.elements.forEach(element=>{element&&isRequireWrapperNecessary(element)&&wrapValueWithRequireWrapper(config,element)})})}var
|
|
110
|
-
${e}
|
|
111
|
-
`),logger.info(`\u26A0\uFE0F Storybook automigrations are based on AST parsing and it's possible that your ${import_picocolors.default.blue(mainConfigPath)} file contains a non-standard format (e.g. your export is not an object) or that there was an error when parsing dynamic values (e.g. "require" calls, or usage of environment variables). When your main config is non-standard, automigrations are unfortunately not possible. Please follow the instructions given previously and follow the documentation to make the updates manually.`)}};var postinstallAddon=async(addonName,options)=>{try{let modulePath=require.resolve(`${addonName}/postinstall`,{paths:[process.cwd()]}),postinstall=require(modulePath);try{console.log(`Running postinstall script for ${addonName}`),await postinstall(options)}catch(e){console.error(`Error running postinstall script for ${addonName}`),console.error(e)}}catch{}};var getVersionSpecifier=addon=>{let groups=/^(@{0,1}[^@]+)(?:@(.+))?$/.exec(addon);return groups?[groups[1],groups[2]]:[addon,void 0]};var checkInstalled=(addonName,main)=>!!main.addons?.find(entry=>(typeof entry=="string"?entry:entry.name)?.endsWith(addonName)),isCoreAddon=addonName=>Object.hasOwn(import_common3.versions,addonName);async function add(addon,{packageManager:pkgMgr,skipPostinstall,configDir:userSpecifiedConfigDir,yes,skipInstall},logger17=console){let[addonName,inputVersion]=getVersionSpecifier(addon),packageManager=import_common3.JsPackageManagerFactory.getPackageManager({force:pkgMgr}),{mainConfig,mainConfigPath,configDir,previewConfigPath,storybookVersion}=await getStorybookData({packageManager,configDir:userSpecifiedConfigDir});if(typeof configDir>"u")throw new Error(import_ts_dedent2.dedent`
|
|
83
|
+
`),functionDeclaration}function wrapValueWithRequireWrapper(config,node){isRequireWrapperNecessary(node,n=>{if(import_babel.types.isStringLiteral(n)){let wrapperNode=getReferenceToRequireWrapper(config,n.value);Object.keys(n).forEach(k=>{delete n[k]}),Object.keys(wrapperNode).forEach(k=>{n[k]=wrapperNode[k]})}import_babel.types.isObjectProperty(n)&&import_babel.types.isStringLiteral(n.value)&&(n.value=getReferenceToRequireWrapper(config,n.value.value)),import_babel.types.isArrayExpression(n)&&n.elements.forEach(element=>{element&&isRequireWrapperNecessary(element)&&wrapValueWithRequireWrapper(config,element)})})}init_mainConfigFile();var postinstallAddon=async(addonName,options)=>{try{let modulePath=require.resolve(`${addonName}/postinstall`,{paths:[process.cwd()]}),postinstall=require(modulePath);try{console.log(`Running postinstall script for ${addonName}`),await postinstall(options)}catch(e){console.error(`Error running postinstall script for ${addonName}`),console.error(e)}}catch{}};var getVersionSpecifier=addon=>{let groups=/^(@{0,1}[^@]+)(?:@(.+))?$/.exec(addon);return groups?[groups[1],groups[2]]:[addon,void 0]};var checkInstalled=(addonName,main)=>!!main.addons?.find(entry=>(typeof entry=="string"?entry:entry.name)?.endsWith(addonName)),isCoreAddon=addonName=>Object.hasOwn(import_common6.versions,addonName);async function add(addon,{packageManager:pkgMgr,skipPostinstall,configDir:userSpecifiedConfigDir,yes,skipInstall},logger23=console){let[addonName,inputVersion]=getVersionSpecifier(addon),{mainConfig,mainConfigPath,configDir,previewConfigPath,packageManager}=await getStorybookData({configDir:userSpecifiedConfigDir,packageManagerName:pkgMgr});if(typeof configDir>"u")throw new Error(import_ts_dedent5.dedent`
|
|
112
84
|
Unable to find storybook config directory. Please specify your Storybook config directory with the --config-dir flag.
|
|
113
|
-
`);if(!mainConfigPath){logger17.error("Unable to find Storybook main.js config");return}let shouldAddToMain=!0;if(checkInstalled(addonName,mainConfig)&&(shouldAddToMain=!1,!yes)){logger17.log(`The Storybook addon "${addonName}" is already present in ${mainConfigPath}.`);let{shouldForceInstall}=await(0,import_prompts.default)({type:"confirm",name:"shouldForceInstall",message:"Do you wish to install it again?"});if(!shouldForceInstall)return}let main=await(0,import_csf_tools2.readConfig)(mainConfigPath);logger17.log(`Verifying ${addonName}`);let version2=inputVersion;!version2&&isCoreAddon(addonName)&&storybookVersion&&(version2=storybookVersion),version2||(version2=await packageManager.latestVersion(addonName)),isCoreAddon(addonName)&&version2!==storybookVersion&&logger17.warn(`The version of ${addonName} (${version2}) you are installing is not the same as the version of Storybook you are using (${storybookVersion}). This may lead to unexpected behavior.`);let addonWithVersion=isValidVersion(version2)&&!version2.includes("-pr-")?`${addonName}@^${version2}`:`${addonName}@${version2}`;if(logger17.log(`Installing ${addonWithVersion}`),await packageManager.addDependencies({installAsDevDependencies:!0,writeOutputToFile:!1},[addonWithVersion]),shouldAddToMain){if(logger17.log(`Adding '${addon}' to the "addons" field in ${mainConfigPath}`),main.getFieldNode(["addons"])&&getRequireWrapperName(main)!==null){let addonNode=main.valueToNode(addonName);main.appendNodeToArray(["addons"],addonNode),wrapValueWithRequireWrapper(main,addonNode)}else main.appendValueToArray(["addons"],addonName);await(0,import_csf_tools2.writeConfig)(main)}try{await(0,import_common3.syncStorybookAddons)(mainConfig,previewConfigPath,configDir)}catch{}!skipPostinstall&&isCoreAddon(addonName)&&await postinstallAddon(addonName,{packageManager:packageManager.type,configDir,yes,skipInstall})}function isValidVersion(version2){return import_semver.default.valid(version2)||version2.match(/^\d+$/)}var import_node_fs3=require("fs"),import_promises7=require("fs/promises"),import_node_path6=require("path"),import_common20=require("storybook/internal/common");var import_node_process2=__toESM(require("process"),1);function ansiRegex({onlyFirst=!1}={}){let pattern=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(pattern,onlyFirst?void 0:"g")}var regex=ansiRegex();function stripAnsi(string){if(typeof string!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof string}\``);return string.replace(regex,"")}var import_eastasianwidth=__toESM(require_eastasianwidth(),1),import_emoji_regex=__toESM(require_emoji_regex(),1);function stringWidth(string,options={}){if(typeof string!="string"||string.length===0||(options={ambiguousIsNarrow:!0,...options},string=stripAnsi(string),string.length===0))return 0;string=string.replace((0,import_emoji_regex.default)()," ");let ambiguousCharacterWidth=options.ambiguousIsNarrow?1:2,width=0;for(let character of string){let codePoint=character.codePointAt(0);if(codePoint<=31||codePoint>=127&&codePoint<=159||codePoint>=768&&codePoint<=879)continue;switch(import_eastasianwidth.default.eastAsianWidth(character)){case"F":case"W":width+=2;break;case"A":width+=ambiguousCharacterWidth;break;default:width+=1}}return width}var wrapAnsi16=(offset=0)=>code=>`\x1B[${code+offset}m`,wrapAnsi256=(offset=0)=>code=>`\x1B[${38+offset};5;${code}m`,wrapAnsi16m=(offset=0)=>(red,green,blue)=>`\x1B[${38+offset};2;${red};${green};${blue}m`,styles={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},modifierNames=Object.keys(styles.modifier),foregroundColorNames=Object.keys(styles.color),backgroundColorNames=Object.keys(styles.bgColor),colorNames=[...foregroundColorNames,...backgroundColorNames];function assembleStyles(){let codes=new Map;for(let[groupName,group]of Object.entries(styles)){for(let[styleName,style]of Object.entries(group))styles[styleName]={open:`\x1B[${style[0]}m`,close:`\x1B[${style[1]}m`},group[styleName]=styles[styleName],codes.set(style[0],style[1]);Object.defineProperty(styles,groupName,{value:group,enumerable:!1})}return Object.defineProperty(styles,"codes",{value:codes,enumerable:!1}),styles.color.close="\x1B[39m",styles.bgColor.close="\x1B[49m",styles.color.ansi=wrapAnsi16(),styles.color.ansi256=wrapAnsi256(),styles.color.ansi16m=wrapAnsi16m(),styles.bgColor.ansi=wrapAnsi16(10),styles.bgColor.ansi256=wrapAnsi256(10),styles.bgColor.ansi16m=wrapAnsi16m(10),Object.defineProperties(styles,{rgbToAnsi256:{value(red,green,blue){return red===green&&green===blue?red<8?16:red>248?231:Math.round((red-8)/247*24)+232:16+36*Math.round(red/255*5)+6*Math.round(green/255*5)+Math.round(blue/255*5)},enumerable:!1},hexToRgb:{value(hex){let matches=/[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));if(!matches)return[0,0,0];let[colorString]=matches;colorString.length===3&&(colorString=[...colorString].map(character=>character+character).join(""));let integer=Number.parseInt(colorString,16);return[integer>>16&255,integer>>8&255,integer&255]},enumerable:!1},hexToAnsi256:{value:hex=>styles.rgbToAnsi256(...styles.hexToRgb(hex)),enumerable:!1},ansi256ToAnsi:{value(code){if(code<8)return 30+code;if(code<16)return 90+(code-8);let red,green,blue;if(code>=232)red=((code-232)*10+8)/255,green=red,blue=red;else{code-=16;let remainder=code%36;red=Math.floor(code/36)/5,green=Math.floor(remainder/6)/5,blue=remainder%6/5}let value=Math.max(red,green,blue)*2;if(value===0)return 30;let result=30+(Math.round(blue)<<2|Math.round(green)<<1|Math.round(red));return value===2&&(result+=60),result},enumerable:!1},rgbToAnsi:{value:(red,green,blue)=>styles.ansi256ToAnsi(styles.rgbToAnsi256(red,green,blue)),enumerable:!1},hexToAnsi:{value:hex=>styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),enumerable:!1}}),styles}var ansiStyles=assembleStyles(),ansi_styles_default=ansiStyles;var import_node_process=__toESM(require("process"),1),import_node_os=__toESM(require("os"),1),import_node_tty=__toESM(require("tty"),1);function hasFlag(flag,argv=globalThis.Deno?globalThis.Deno.args:import_node_process.default.argv){let prefix=flag.startsWith("-")?"":flag.length===1?"-":"--",position=argv.indexOf(prefix+flag),terminatorPosition=argv.indexOf("--");return position!==-1&&(terminatorPosition===-1||position<terminatorPosition)}var{env}=import_node_process.default,flagForceColor;hasFlag("no-color")||hasFlag("no-colors")||hasFlag("color=false")||hasFlag("color=never")?flagForceColor=0:(hasFlag("color")||hasFlag("colors")||hasFlag("color=true")||hasFlag("color=always"))&&(flagForceColor=1);function envForceColor(){if("FORCE_COLOR"in env)return env.FORCE_COLOR==="true"?1:env.FORCE_COLOR==="false"?0:env.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(env.FORCE_COLOR,10),3)}function translateLevel(level){return level===0?!1:{level,hasBasic:!0,has256:level>=2,has16m:level>=3}}function _supportsColor(haveStream,{streamIsTTY,sniffFlags=!0}={}){let noFlagForceColor=envForceColor();noFlagForceColor!==void 0&&(flagForceColor=noFlagForceColor);let forceColor=sniffFlags?flagForceColor:noFlagForceColor;if(forceColor===0)return 0;if(sniffFlags){if(hasFlag("color=16m")||hasFlag("color=full")||hasFlag("color=truecolor"))return 3;if(hasFlag("color=256"))return 2}if("TF_BUILD"in env&&"AGENT_NAME"in env)return 1;if(haveStream&&!streamIsTTY&&forceColor===void 0)return 0;let min=forceColor||0;if(env.TERM==="dumb")return min;if(import_node_process.default.platform==="win32"){let osRelease=import_node_os.default.release().split(".");return Number(osRelease[0])>=10&&Number(osRelease[2])>=10586?Number(osRelease[2])>=14931?3:2:1}if("CI"in env)return["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some(key=>key in env)?3:["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(sign=>sign in env)||env.CI_NAME==="codeship"?1:min;if("TEAMCITY_VERSION"in env)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION)?1:0;if(env.COLORTERM==="truecolor"||env.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in env){let version2=Number.parseInt((env.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(env.TERM_PROGRAM){case"iTerm.app":return version2>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(env.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)||"COLORTERM"in env?1:min}function createSupportsColor(stream,options={}){let level=_supportsColor(stream,{streamIsTTY:stream&&stream.isTTY,...options});return translateLevel(level)}var supportsColor={stdout:createSupportsColor({isTTY:import_node_tty.default.isatty(1)}),stderr:createSupportsColor({isTTY:import_node_tty.default.isatty(2)})},supports_color_default=supportsColor;function stringReplaceAll(string,substring,replacer){let index=string.indexOf(substring);if(index===-1)return string;let substringLength=substring.length,endIndex=0,returnValue="";do returnValue+=string.slice(endIndex,index)+substring+replacer,endIndex=index+substringLength,index=string.indexOf(substring,endIndex);while(index!==-1);return returnValue+=string.slice(endIndex),returnValue}function stringEncaseCRLFWithFirstIndex(string,prefix,postfix,index){let endIndex=0,returnValue="";do{let gotCR=string[index-1]==="\r";returnValue+=string.slice(endIndex,gotCR?index-1:index)+prefix+(gotCR?`\r
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
`))
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
`).
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
`)),
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
`),process.exit(1)),!mainConfig)throw new Error("mainConfig is undefined");let allDependencies=await packageManager.getAllDependencies();"storybook"in allDependencies||logDiagnostic(`Package ${import_picocolors5.default.cyan("storybook")} not found`,import_ts_dedent3.dedent`
|
|
151
|
-
The ${import_picocolors5.default.cyan("storybook")} package was not found in your package.json.
|
|
152
|
-
Installing ${import_picocolors5.default.cyan("storybook")} as a direct dev dependency in your package.json is required.
|
|
153
|
-
`);let incompatibleStorybookPackagesList=await getIncompatibleStorybookPackages({currentStorybookVersion:storybookVersion}),incompatiblePackagesMessage=getIncompatiblePackagesSummary(incompatibleStorybookPackagesList,storybookVersion);incompatiblePackagesMessage&&logDiagnostic("Incompatible packages found",incompatiblePackagesMessage);let installationMetadata=await packageManager.findInstallations(["@storybook/*","storybook"]);if(!incompatiblePackagesMessage){let mismatchingVersionMessage=getMismatchingVersionsWarnings(installationMetadata,allDependencies);if(mismatchingVersionMessage)logDiagnostic("Diagnostics",[mismatchingVersionMessage].join(`
|
|
154
|
-
|
|
155
|
-
-------
|
|
156
|
-
|
|
157
|
-
`));else{let list=installationMetadata?getDuplicatedDepsWarnings(installationMetadata):getDuplicatedDepsWarnings();Array.isArray(list)&&list.length>0&&logDiagnostic("Duplicated dependencies found",list?.join(`
|
|
158
|
-
`))}}let commandMessage=`You can always recheck the health of your project by running:
|
|
159
|
-
${import_picocolors5.default.cyan("npx storybook doctor")}`;logger2.info(),foundIssues?(logger2.info(commandMessage),logger2.info(),logger2.info(`Full logs are available in ${import_picocolors5.default.cyan(LOG_FILE_PATH)}`),await(0,import_promises.rename)(TEMP_LOG_FILE_PATH,(0,import_node_path3.join)(process.cwd(),LOG_FILE_NAME))):(logger2.info("\u{1F973} Your Storybook project looks good!"),logger2.info(commandMessage),await(0,import_promises.rm)(TEMP_LOG_FILE_PATH,{recursive:!0,force:!0})),logger2.info(),cleanup()};var import_common10=require("storybook/internal/common"),import_picocolors8=__toESM(require_picocolors(),1),import_prompts2=__toESM(require("prompts"),1),import_ts_dedent4=require("ts-dedent");var import_node_os3=__toESM(require("os"),1),import_common8=require("storybook/internal/common"),import_fs=require("fs"),import_picocolors6=__toESM(require_picocolors(),1);function slash(path3){return path3.startsWith("\\\\?\\")?path3:path3.replace(/\\/g,"/")}var logger3=console,maxConcurrentTasks=Math.max(1,import_node_os3.default.cpus().length-1);async function runCodemod(globPattern="**/*.stories.*",transform,{dryRun=!1,skipFormatting=!1}={}){let modifiedCount=0,unmodifiedCount=0,errorCount=0,{globby}=await import("globby"),files=await globby(slash(globPattern),{followSymbolicLinks:!0,ignore:["**/node_modules/**","**/dist/**","**/storybook-static/**","**/build/**"]});if(!files.length)throw logger3.error(`No files found for glob pattern "${globPattern}".
|
|
85
|
+
`);if(!mainConfigPath){logger23.error("Unable to find Storybook main.js config");return}let shouldAddToMain=!0;if(checkInstalled(addonName,mainConfig)&&(shouldAddToMain=!1,!yes&&(logger23.log(`The Storybook addon "${addonName}" is already present in ${mainConfigPath}.`),!await import_node_logger5.prompt.confirm({message:"Do you wish to install it again?"}))))return;let main=await(0,import_csf_tools2.readConfig)(mainConfigPath);logger23.log(`Verifying ${addonName}`);let version2=inputVersion;if(!version2&&isCoreAddon(addonName)&&(version2=import_common6.versions.storybook),!version2){let latestVersion=await packageManager.latestVersion(addonName);if(!latestVersion)throw new Error(`No version found for ${addonName}`);version2=latestVersion}let storybookVersion=import_common6.versions.storybook,versionIsStorybook=version2===import_common6.versions.storybook;isCoreAddon(addonName)&&!versionIsStorybook&&logger23.warn(`The version of ${addonName} (${version2}) you are installing is not the same as the version of Storybook you are using (${storybookVersion}). This may lead to unexpected behavior.`);let versionRange=packageManager.getDependencyVersion("storybook")?.match(/^[~^]/)?.[0]??"",addonWithVersion=versionIsStorybook?`${addonName}@${versionRange}${storybookVersion}`:isValidVersion(version2)&&!version2.includes("-pr-")?`${addonName}@^${version2}`:`${addonName}@${version2}`;if(logger23.log(`Installing ${addonWithVersion}`),await packageManager.addDependencies({type:"devDependencies",writeOutputToFile:!1,skipInstall},[addonWithVersion]),shouldAddToMain){if(logger23.log(`Adding '${addon}' to the "addons" field in ${mainConfigPath}`),main.getFieldNode(["addons"])&&getRequireWrapperName(main)!==null){let addonNode=main.valueToNode(addonName);main.appendNodeToArray(["addons"],addonNode),wrapValueWithRequireWrapper(main,addonNode)}else main.appendValueToArray(["addons"],addonName);await(0,import_csf_tools2.writeConfig)(main)}try{await(0,import_common6.syncStorybookAddons)(mainConfig,previewConfigPath,configDir)}catch{}!skipPostinstall&&isCoreAddon(addonName)&&await postinstallAddon(addonName,{packageManager:packageManager.type,configDir,yes,skipInstall})}function isValidVersion(version2){return import_semver6.default.valid(version2)||version2.match(/^\d+$/)}var import_node_logger18=require("storybook/internal/node-logger"),import_picocolors15=__toESM(require_picocolors(),1);var isProduction=process.env.NODE_ENV==="production",prefix="Invariant failed";function invariant(condition,message){if(!condition){if(isProduction)throw new Error(prefix);var provided=typeof message=="function"?message():message,value=provided?"".concat(prefix,": ").concat(provided):prefix;throw new Error(value)}}var import_ts_dedent16=require("ts-dedent");var import_common10=require("storybook/internal/common"),import_node_logger7=require("storybook/internal/node-logger"),import_picocolors6=__toESM(require_picocolors(),1),import_ts_dedent6=require("ts-dedent");init_mainConfigFile();init_util();var import_common7=require("storybook/internal/common"),import_picocolors3=__toESM(require_picocolors(),1);var import_semver7=__toESM(require_semver2(),1);function hasMultipleVersions(versions8){return versions8.find(v=>{let major2=import_semver7.default.major(v);if(major2===0){let minor=import_semver7.default.minor(v);if(minor===0){let patch=import_semver7.default.patch(v);return versions8.some(v2=>import_semver7.default.patch(v2)!==patch)}return versions8.some(v2=>import_semver7.default.minor(v2)!==minor)}return versions8.some(v2=>import_semver7.default.major(v2)!==major2)})}var messageDivider=`
|
|
86
|
+
|
|
87
|
+
`,allowList=["@storybook/csf","@storybook/addons","@storybook/channel-postmessage","@storybook/channel-websocket","@storybook/client-api","@storybook/core-client","@storybook/preview-web","@storybook/store","@storybook/components","@storybook/router","@storybook/theming","@storybook/api","@storybook/manager-api"],disallowList=[Object.keys(import_common7.rendererPackages),Object.keys(import_common7.frameworkPackages),"storybook","@storybook/instrumenter","@storybook/core-server","@storybook/manager","@storybook/preview"];function getDuplicatedDepsWarnings(installationMetadata){try{if(!installationMetadata||!installationMetadata?.duplicatedDependencies||Object.keys(installationMetadata.duplicatedDependencies).length===0)return;let messages=[],{critical,trivial}=Object.entries(installationMetadata?.duplicatedDependencies).reduce((acc,[dep,packageVersions])=>{if(allowList.includes(dep))return acc;let hasMultipleMajorVersions=hasMultipleVersions(packageVersions);return disallowList.includes(dep)&&hasMultipleMajorVersions?acc.critical.push(`${import_picocolors3.default.bold(import_picocolors3.default.red(dep))}:
|
|
88
|
+
${packageVersions.join(", ")}`):acc.trivial.push(`${import_picocolors3.default.yellow(dep)}:
|
|
89
|
+
${packageVersions.join(", ")}`),acc},{critical:[],trivial:[]});return critical.length===0&&trivial.length===0||(critical.length>0&&(messages.push(`${import_picocolors3.default.bold("Critical:")} The following dependencies are duplicated and WILL cause unexpected behavior:`),messages.push(critical.join(messageDivider),`
|
|
90
|
+
`)),trivial.length>0&&(messages.push(`${import_picocolors3.default.bold("Attention:")} The following dependencies are duplicated which might cause unexpected behavior:`),messages.push(trivial.join(messageDivider))),messages.push(`
|
|
91
|
+
`,`Please try de-duplicating these dependencies by running ${import_picocolors3.default.cyan(`${installationMetadata.dedupeCommand}`)}`),messages.push(`
|
|
92
|
+
`,`You can find more information for a given dependency by running ${import_picocolors3.default.cyan(`${installationMetadata.infoCommand} <package-name>`)}`)),messages}catch{return}}var import_common8=require("storybook/internal/common"),import_node_logger6=require("storybook/internal/node-logger"),import_picocolors4=__toESM(require_picocolors(),1),import_semver8=__toESM(require_semver2(),1);var consolidatedPackages={"@storybook/channels":"storybook/internal/channels","@storybook/client-logger":"storybook/internal/client-logger","@storybook/core-common":"storybook/internal/common","@storybook/core-events":"storybook/internal/core-events","@storybook/csf":"storybook/internal/csf","@storybook/csf-tools":"storybook/internal/csf-tools","@storybook/docs-tools":"storybook/internal/docs-tools","@storybook/node-logger":"storybook/internal/node-logger","@storybook/preview-api":"storybook/preview-api","@storybook/router":"storybook/internal/router","@storybook/telemetry":"storybook/internal/telemetry","@storybook/theming":"storybook/theming","@storybook/types":"storybook/internal/types","@storybook/manager-api":"storybook/manager-api","@storybook/manager":"storybook/internal/manager","@storybook/preview":"storybook/internal/preview","@storybook/core-server":"storybook/internal/core-server","@storybook/builder-manager":"storybook/internal/builder-manager","@storybook/components":"storybook/internal/components","@storybook/test":"storybook/test","@storybook/experimental-nextjs-vite":"@storybook/nextjs-vite","@storybook/instrumenter":"storybook/internal/instrumenter","@storybook/blocks":"@storybook/addon-docs/blocks"};var checkPackageCompatibility=async(dependency,context)=>{let{currentStorybookVersion,skipErrors,packageManager}=context;try{let dependencyPackageJson=packageManager.getModulePackageJSON(dependency);if(dependencyPackageJson===null)return{packageName:dependency};let{version:packageVersion,name=dependency,dependencies,peerDependencies,homepage}=dependencyPackageJson,packageStorybookVersion=Object.entries({...dependencies,...peerDependencies}).filter(([dep])=>import_common8.versions[dep]||consolidatedPackages[dep]).map(([_,versionRange])=>versionRange).find(versionRange=>versionRange&&import_semver8.default.validRange(versionRange)&&!import_semver8.default.satisfies(currentStorybookVersion,versionRange)),isCorePackage3=import_common8.versions[name],availableUpdate,availableCoreUpdate;return isCorePackage3&&packageVersion&&import_semver8.default.gt(currentStorybookVersion,packageVersion)&&(availableUpdate=currentStorybookVersion),isCorePackage3&&packageVersion&&import_semver8.default.gt(packageVersion,currentStorybookVersion)&&(availableCoreUpdate=packageVersion),{packageName:name,packageVersion,homepage,hasIncompatibleDependencies:packageStorybookVersion!=null,packageStorybookVersion,availableUpdate,availableCoreUpdate}}catch(err){return skipErrors||import_node_logger6.logger.log(`Error checking compatibility for ${dependency}, please report an issue:
|
|
93
|
+
`+String(err)),{packageName:dependency}}},getIncompatibleStorybookPackages=async context=>{let allDeps=context.packageManager.getAllDependencies(),storybookLikeDeps=Object.keys(allDeps).filter(dep=>dep.includes("storybook"));if(storybookLikeDeps.length===0&&!context.skipErrors)throw new Error("No Storybook dependencies found in the package.json");return Promise.all(storybookLikeDeps.filter(dep=>!import_common8.versions[dep]).map(dep=>checkPackageCompatibility(dep,context)))},getIncompatiblePackagesSummary=(dependencyAnalysis,currentStorybookVersion)=>{let summaryMessage=[],incompatiblePackages=dependencyAnalysis.filter(dep=>dep.hasIncompatibleDependencies);return incompatiblePackages.length>0&&(summaryMessage.push(`You are currently using Storybook ${import_picocolors4.default.bold(currentStorybookVersion)} but you have packages which are incompatible with it:
|
|
94
|
+
`),incompatiblePackages.forEach(({packageName:addonName,packageVersion:addonVersion,homepage,availableUpdate,packageStorybookVersion})=>{let packageDescription=`${addonName}@${addonVersion}`,updateMessage=availableUpdate?` (${availableUpdate} available!)`:"",dependsOnStorybook=packageStorybookVersion!=null?` which depends on ${packageStorybookVersion}`:"",packageRepo=homepage?`
|
|
95
|
+
Repo: ${homepage}`:"";summaryMessage.push(`- ${packageDescription}${updateMessage}${dependsOnStorybook}${packageRepo}`)}),summaryMessage.push(`
|
|
96
|
+
Please consider updating your packages or contacting the maintainers for compatibility details.`,`
|
|
97
|
+
For more on Storybook 9 compatibility, see the linked GitHub issue:`,"https://github.com/storybookjs/storybook/issues/30944"),incompatiblePackages.some(dep=>dep.availableCoreUpdate)&&summaryMessage.push(`
|
|
98
|
+
`,`The version of ${import_picocolors4.default.blue(`storybook@${currentStorybookVersion}`)} is behind the following core packages:`,`${incompatiblePackages.filter(dep=>dep.availableCoreUpdate).map(({packageName,packageVersion})=>`- ${import_picocolors4.default.blue(`${packageName}@${packageVersion}`)}`).join(`
|
|
99
|
+
`)}`,`
|
|
100
|
+
`,"Upgrade Storybook with:",import_picocolors4.default.blue("npx storybook@latest upgrade"))),summaryMessage.join(`
|
|
101
|
+
`)};var import_common9=require("storybook/internal/common"),import_picocolors5=__toESM(require_picocolors(),1),import_semver9=__toESM(require_semver2(),1);function getPrimaryVersion(name,installationMetadata){if(!name)return;let packageMetadata=installationMetadata?.dependencies[name];if(packageMetadata)return packageMetadata[0]?.version}function getMismatchingVersionsWarnings(installationMetadata){if(!installationMetadata)return;let messages=[];try{let frameworkPackageName=Object.keys(installationMetadata?.dependencies||[]).find(packageName=>Object.keys(import_common9.frameworkPackages).includes(packageName)),cliVersion=getPrimaryVersion("storybook",installationMetadata),frameworkVersion=getPrimaryVersion(frameworkPackageName,installationMetadata);if(!cliVersion||!frameworkVersion||import_semver9.default.eq(cliVersion,frameworkVersion))return;messages.push(`${import_picocolors5.default.bold("Attention:")} There seems to be a mismatch between your Storybook package versions. This can result in a broken Storybook installation.`);let versionToCompare,packageToDisplay;import_semver9.default.lt(cliVersion,frameworkVersion)?(versionToCompare=frameworkVersion,packageToDisplay=frameworkPackageName):(versionToCompare=cliVersion,packageToDisplay="storybook"),messages.push(`The version of your storybook core packages should align with ${import_picocolors5.default.yellow(versionToCompare)} (from the ${import_picocolors5.default.cyan(packageToDisplay)} package) or higher.`);let filteredDependencies=Object.entries(installationMetadata?.dependencies||[]).filter(([name,packages])=>Object.keys(import_common9.versions).includes(name)?packages[0].version!==versionToCompare:!1);return filteredDependencies.length>0&&messages.push("Based on your lockfile, these dependencies should be aligned:",filteredDependencies.map(([name,dep])=>`${import_picocolors5.default.yellow(name)}: ${dep[0].version}`).join(`
|
|
102
|
+
`)),messages.push(`You can run ${import_picocolors5.default.cyan("npx storybook@latest upgrade")} to upgrade all of your Storybook packages to the latest version.
|
|
103
|
+
|
|
104
|
+
Alternatively you can try manually changing the versions to match in your package.json. We also recommend regenerating your lockfile, or running the following command to possibly deduplicate your Storybook package versions: ${import_picocolors5.default.cyan(installationMetadata?.dedupeCommand)}`),messages.join(`
|
|
105
|
+
|
|
106
|
+
`)}catch{return}}var DiagnosticType=(DiagnosticType2=>(DiagnosticType2.MISSING_STORYBOOK_DEPENDENCY="missing_storybook_dependency",DiagnosticType2.INCOMPATIBLE_PACKAGES="incompatible_packages",DiagnosticType2.MISMATCHING_VERSIONS="mismatching_versions",DiagnosticType2.DUPLICATED_DEPENDENCIES="duplicated_dependencies",DiagnosticType2.CONFIGURATION_ERROR="configuration_error",DiagnosticType2))(DiagnosticType||{});function collectDeduplicatedDiagnostics(projectResults){let diagnosticMap=new Map;return Object.entries(projectResults).forEach(([configDir,result])=>{Object.entries(result.diagnostics).forEach(([type,status])=>{if(status!=="passed"){let diagnosticType=type,message=result.messages[diagnosticType];if(message){let existing=diagnosticMap.get(diagnosticType);existing?existing.projects.push({configDir}):diagnosticMap.set(diagnosticType,{type:diagnosticType,title:type.replace(/_/g," ").replace(/\b\w/g,l=>l.toUpperCase()),message,projects:[{configDir}]})}}})}),Array.from(diagnosticMap.values())}function displayDoctorResults(projectResults){let projectCount=Object.keys(projectResults).length;if(projectCount===0)return!1;if(!Object.values(projectResults).some(result=>result.status!=="healthy"))return projectCount===1?import_node_logger7.logger.log("Your Storybook project looks good!"):import_node_logger7.logger.log(`All ${projectCount} Storybook projects look good!`),!1;if(projectCount===1){let[configDir,result]=Object.entries(projectResults)[0],projectName=shortenPath(configDir)||".";if(result.status==="healthy")import_node_logger7.logger.log(`\u2705 ${projectName}: No issues found`);else{let issueCount=Object.values(result.diagnostics).filter(status=>status!=="passed").length;result.status==="check_error"?import_node_logger7.logger.error(`${projectName}: ${issueCount} ${issueCount===1?"problem":"problems"} found`):import_node_logger7.logger.warn(`${projectName}: ${issueCount} ${issueCount===1?"issue":"issues"} found`),Object.entries(result.diagnostics).forEach(([type,status])=>{if(status!=="passed"){let message=result.messages[type];if(message){let title=type.replace(/_/g," ").replace(/\b\w/g,l=>l.toUpperCase());import_node_logger7.logger.logBox(message,{title:status==="check_error"?import_node_logger7.CLI_COLORS.error(title):import_node_logger7.CLI_COLORS.warning(title)})}}})}}else{let deduplicatedDiagnostics=collectDeduplicatedDiagnostics(projectResults),totalIssues=deduplicatedDiagnostics.length;Object.values(projectResults).filter(result=>result.status==="check_error").length>0?import_node_logger7.logger.error(`Found ${totalIssues} ${totalIssues===1?"issue":"issues"} across ${projectCount} projects`):import_node_logger7.logger.warn(`Found ${totalIssues} ${totalIssues===1?"issue":"issues"} across ${projectCount} projects`),deduplicatedDiagnostics.forEach(diagnostic=>{let messageWithProjects=diagnostic.message;if(diagnostic.projects.length>1){let projectNames=diagnostic.projects.map(p=>shortenPath(p.configDir)||".").join(", ");messageWithProjects+=`
|
|
107
|
+
|
|
108
|
+
Affected projects: ${projectNames}`}else{let projectName=shortenPath(diagnostic.projects[0].configDir)||".";messageWithProjects+=`
|
|
109
|
+
|
|
110
|
+
Affected project: ${projectName}`}import_node_logger7.logger.logBox(messageWithProjects,{title:import_node_logger7.CLI_COLORS.warning(diagnostic.title)})})}import_node_logger7.logger.step("Storybook doctor is complete!");let commandMessage=`You can always recheck the health of your project(s) by running:
|
|
111
|
+
${import_picocolors6.default.cyan("npx storybook doctor")}`;return import_node_logger7.logger.log(commandMessage),!0}async function runMultiProjectDoctor(projects){if(projects.length===0)return{};let projectOptions=projects.map(project=>({configDir:project.configDir,packageManager:project.packageManager,storybookVersion:project.storybookVersion,mainConfig:project.mainConfig}));return await collectDoctorResultsByProject(projectOptions)}var doctor=async({configDir:userSpecifiedConfigDir,packageManager:packageManagerName})=>{import_node_logger7.logger.step("Checking the health of your Storybook..");let diagnosticResults=[],packageManager,configDir,storybookVersion,mainConfig;try{({packageManager,configDir,storybookVersion,mainConfig}=await getStorybookData({configDir:userSpecifiedConfigDir,packageManagerName}))}catch(err){let title="Configuration Error",message;err.message.includes("No configuration files have been found")?message=import_ts_dedent6.dedent`
|
|
112
|
+
Could not find or evaluate your Storybook main.js config directory at ${import_picocolors6.default.blue(configDir||".storybook")} so the doctor command cannot proceed. You might be running this command in a monorepo or a non-standard project structure. If that is the case, please rerun this command by specifying the path to your Storybook config directory via the --config-dir option.
|
|
113
|
+
`:message=`\u274C ${err.message}`,diagnosticResults.push({type:"configuration_error",title,message,projects:[{configDir}]})}let doctorResults=await collectDoctorResultsByProject([{configDir,packageManager,storybookVersion,mainConfig}]);displayDoctorResults(doctorResults)&&import_node_logger7.logTracker.enableLogWriting()};async function getDoctorDiagnostics({configDir,packageManager,storybookVersion,mainConfig}){let results=[];if(!storybookVersion)return results.push({type:"configuration_error",title:"Version Detection Failed",message:import_ts_dedent6.dedent`
|
|
114
|
+
❌ Unable to determine Storybook version so the command will not proceed.
|
|
115
|
+
🤔 Are you running storybook doctor from your project directory? Please specify your Storybook config directory with the --config-dir flag.
|
|
116
|
+
`,project:{configDir}}),results;if(!mainConfig)return results.push({type:"configuration_error",title:"Main Config Error",message:"mainConfig is undefined",project:{configDir}}),results;packageManager.packageJsonPaths.some(import_common10.JsPackageManager.hasStorybookDependency)||results.push({type:"missing_storybook_dependency",title:'Package "storybook" not found',message:import_ts_dedent6.dedent`
|
|
117
|
+
The "storybook" package was not found in your package.json.
|
|
118
|
+
Installing "storybook" as a direct dev dependency in your package.json is required.
|
|
119
|
+
`,project:{configDir}});let incompatibleStorybookPackagesList=await getIncompatibleStorybookPackages({currentStorybookVersion:storybookVersion,packageManager}),incompatiblePackagesMessage=getIncompatiblePackagesSummary(incompatibleStorybookPackagesList,storybookVersion);incompatiblePackagesMessage&&results.push({type:"incompatible_packages",title:"Incompatible packages found",message:incompatiblePackagesMessage,project:{configDir}});let installationMetadata=await packageManager.findInstallations(["@storybook/*","storybook"]);if(!incompatiblePackagesMessage){let mismatchingVersionMessage=getMismatchingVersionsWarnings(installationMetadata);if(mismatchingVersionMessage)results.push({type:"mismatching_versions",title:"Diagnostics",message:mismatchingVersionMessage,project:{configDir}});else{let list=installationMetadata?getDuplicatedDepsWarnings(installationMetadata):getDuplicatedDepsWarnings();Array.isArray(list)&&list.length>0&&results.push({type:"duplicated_dependencies",title:"Duplicated dependencies found",message:list.join(`
|
|
120
|
+
`),project:{configDir}})}}return results}async function collectDoctorResultsByProject(projectOptions){let projectResults={};for(let options of projectOptions){let{configDir}=options;try{let checkResults=await getDoctorDiagnostics(options),diagnostics={},messages={};Object.values(DiagnosticType).forEach(type=>{diagnostics[type]="passed"});let hasIssues=!1,hasErrors=!1;for(let checkResult of checkResults)checkResult.type==="configuration_error"?(diagnostics[checkResult.type]="check_error",hasErrors=!0):(diagnostics[checkResult.type]="has_issues",hasIssues=!0),messages[checkResult.type]=checkResult.message;let status=hasErrors?"check_error":hasIssues?"has_issues":"healthy";projectResults[configDir]={configDir,status,diagnostics,messages}}catch(error){import_node_logger7.logger.error(`Failed to run doctor checks for project ${configDir}:
|
|
121
|
+
${error}`);let diagnostics={},messages={};Object.values(DiagnosticType).forEach(type=>{diagnostics[type]="passed"}),diagnostics.configuration_error="check_error",messages.configuration_error=`Failed to run doctor checks: ${error instanceof Error?error.message:String(error)}`,projectResults[configDir]={configDir,status:"check_error",diagnostics,messages}}}return projectResults}var import_common13=require("storybook/internal/common"),import_node_logger11=require("storybook/internal/node-logger"),import_picocolors9=__toESM(require_picocolors(),1),import_ts_dedent7=require("ts-dedent");var import_node_os=__toESM(require("os"),1),import_common11=require("storybook/internal/common"),import_node_logger8=require("storybook/internal/node-logger"),import_fs=require("fs"),import_picocolors7=__toESM(require_picocolors(),1);init_slash();var maxConcurrentTasks=Math.max(1,import_node_os.default.cpus().length-1);async function runCodemod(globPattern="**/*.stories.*",transform,{dryRun=!1,skipFormatting=!1}={}){let modifiedCount=0,unmodifiedCount=0,errorCount=0,{globby:globby2}=await Promise.resolve().then(()=>(init_globby(),globby_exports)),files=await globby2(slash(globPattern),{followSymbolicLinks:!0,ignore:["**/node_modules/**","**/dist/**","**/storybook-static/**","**/build/**"]});if(!files.length)throw import_node_logger8.logger.error(`No files found for glob pattern "${globPattern}".
|
|
160
122
|
Please try a different pattern.
|
|
161
|
-
`),new Error("No files matched");try{let
|
|
162
|
-
${err}`),info.source}let methodName=configType==="main"?"defineMain":"definePreview",programNode=config._ast.program,exportDecls=config._exportDecls,defineConfigProps=getConfigProperties(exportDecls,{configType}),hasNamedExports=defineConfigProps.length>0;if(config._exportsObject&&hasNamedExports)config._exportsObject.properties.push(...defineConfigProps),programNode.body=removeExportDeclarations(programNode,exportDecls);else if(config._exportsObject){let defineConfigCall=import_babel3.types.callExpression(import_babel3.types.identifier(methodName),[config._exportsObject]),exportDefaultNode=null,declarationNodeIndex=-1;programNode.body.forEach(node=>{if(import_babel3.types.isExportDefaultDeclaration(node)&&import_babel3.types.isIdentifier(node.declaration)){let declarationName=node.declaration.name;if(declarationNodeIndex=programNode.body.findIndex(n=>import_babel3.types.isVariableDeclaration(n)&&n.declarations.some(d=>import_babel3.types.isIdentifier(d.id)&&d.id.name===declarationName&&import_babel3.types.isObjectExpression(d.init))),declarationNodeIndex!==-1){exportDefaultNode=node;let declarationNode=programNode.body[declarationNodeIndex];if(import_babel3.types.isVariableDeclaration(declarationNode)){let id=declarationNode.declarations[0].id;import_babel3.types.isIdentifier(id)&&id.name&&programNode.body.splice(declarationNodeIndex,1)}}}else import_babel3.types.isExportDefaultDeclaration(node)&&import_babel3.types.isObjectExpression(node.declaration)&&(exportDefaultNode=node)}),exportDefaultNode!==null&&(exportDefaultNode.declaration=defineConfigCall)}else if(hasNamedExports){let defineConfigCall=import_babel3.types.callExpression(import_babel3.types.identifier(methodName),[import_babel3.types.objectExpression(defineConfigProps)]);programNode.body=removeExportDeclarations(programNode,exportDecls),programNode.body.push(import_babel3.types.exportDefaultDeclaration(defineConfigCall))}let configImport=import_babel3.types.importDeclaration([import_babel3.types.importSpecifier(import_babel3.types.identifier(methodName),import_babel3.types.identifier(methodName))],import_babel3.types.stringLiteral(frameworkPackage+`${configType==="main"?"/node":""}`)),existingImport=programNode.body.find(node=>import_babel3.types.isImportDeclaration(node)&&node.importKind!=="type"&&node.source.value===configImport.source.value);existingImport&&import_babel3.types.isImportDeclaration(existingImport)?existingImport.specifiers.some(specifier=>import_babel3.types.isImportSpecifier(specifier)&&import_babel3.types.isIdentifier(specifier.imported)&&specifier.imported.name===methodName)||existingImport.specifiers.push(import_babel3.types.importSpecifier(import_babel3.types.identifier(methodName),import_babel3.types.identifier(methodName))):programNode.body.unshift(configImport);let disallowList2=["StorybookConfig","Preview"];programNode.body=cleanupTypeImports(programNode,disallowList2);let output=(0,import_csf_tools3.printConfig)(config).code;return dryRun?(
|
|
163
|
-
${
|
|
164
|
-
${err}`),info.source}let metaVariableName=csf._metaVariableName??"meta",programNode=csf._ast.program,previewImport,hasRootLevelConfig=programNode.body.some(n=>import_babel4.types.isVariableDeclaration(n)&&n.declarations.some(declaration=>import_babel4.types.isIdentifier(declaration.id,{name:"preview"}))),previewPath="#.storybook/preview";if(!useSubPathImports){let relativePath=import_path.default.relative(import_path.default.dirname(info.path),previewConfigPath),{dir,name}=import_path.default.parse(relativePath);previewPath=`${dir?`${dir}/`:""}${name}`,previewPath.startsWith(".")||(previewPath=`./${previewPath}`),previewPath=previewPath.replace(/\\/g,"/")}let sbConfigImportName=hasRootLevelConfig?"storybookPreview":"preview",sbConfigImportSpecifier=import_babel4.types.importDefaultSpecifier(import_babel4.types.identifier(sbConfigImportName));programNode.body.forEach(node=>{if(import_babel4.types.isImportDeclaration(node)&&(0,import_csf_tools4.isValidPreviewPath)(node.source.value)){let defaultImportSpecifier=node.specifiers.find(specifier=>import_babel4.types.isImportDefaultSpecifier(specifier));defaultImportSpecifier?defaultImportSpecifier.local.name!==sbConfigImportName&&(sbConfigImportName=defaultImportSpecifier.local.name):node.specifiers.push(sbConfigImportSpecifier),previewImport=node}});let hasMeta=!!csf._meta;Object.entries(csf._storyExports).forEach(([_key,decl])=>{let id=decl.id,declarator=decl,init=import_babel4.types.isVariableDeclarator(declarator)?declarator.init:void 0;import_babel4.types.isIdentifier(id)&&init&&(id.typeAnnotation&&(id.typeAnnotation=null),(import_babel4.types.isTSSatisfiesExpression(init)||import_babel4.types.isTSAsExpression(init))&&(init=init.expression),import_babel4.types.isObjectExpression(init)?declarator.init=import_babel4.types.callExpression(import_babel4.types.memberExpression(import_babel4.types.identifier(metaVariableName),import_babel4.types.identifier("story")),init.properties.length===0?[]:[init]):import_babel4.types.isArrowFunctionExpression(init)&&(declarator.init=import_babel4.types.callExpression(import_babel4.types.memberExpression(import_babel4.types.identifier(metaVariableName),import_babel4.types.identifier("story")),[init])))});let storyExportDecls=new Map(Object.entries(csf._storyExports).filter(entry=>!import_babel4.types.isFunctionDeclaration(entry[1])));if((0,import_babel4.traverse)(csf._ast,{Identifier(
|
|
165
|
-
\u{1F6E0}\uFE0F Applying codemod on your stories, this might take some time...`),await packageManager.executeCommand({command
|
|
123
|
+
`),new Error("No files matched");try{let pLimit3=(await Promise.resolve().then(()=>(init_p_limit2(),p_limit_exports))).default,limit=pLimit3(maxConcurrentTasks);await Promise.all(files.map(file=>limit(async()=>{try{let filePath=file;try{filePath=await import_fs.promises.realpath(file)}catch{}let source=await import_fs.promises.readFile(filePath,"utf-8"),transformedSource=await transform({path:filePath,source});if(transformedSource!==source){if(!dryRun){let fileContent=skipFormatting?transformedSource:await(0,import_common11.formatFileContent)(file,transformedSource);await import_fs.promises.writeFile(file,fileContent,"utf-8")}modifiedCount++}else unmodifiedCount++}catch(fileError){import_node_logger8.logger.error(`Error processing file ${file}: ${String(fileError)}`),errorCount++}})))}catch(error){import_node_logger8.logger.error(`Error applying transform: ${String(error)}`),errorCount++}import_node_logger8.logger.log(`Summary: ${import_picocolors7.default.green(`${modifiedCount} transformed`)}, ${import_picocolors7.default.yellow(`${unmodifiedCount} unmodified`)}, ${import_picocolors7.default.red(`${errorCount} errors`)}`),dryRun&&import_node_logger8.logger.log(import_picocolors7.default.bold(`This was a dry run. Run without --dry-run to apply the transformation to ${modifiedCount} files.`))}init_mainConfigFile();var import_babel3=require("storybook/internal/babel"),import_common12=require("storybook/internal/common"),import_csf_tools3=require("storybook/internal/csf-tools"),import_node_logger9=require("storybook/internal/node-logger"),import_picocolors8=__toESM(require_picocolors(),1);var import_babel2=require("storybook/internal/babel"),projectAnnotationNames=["decorators","parameters","args","argTypes","loaders","beforeEach","afterEach","render","tags","mount","argsEnhancers","argTypesEnhancers","beforeAll","initialGlobals","globalTypes","applyDecorators","runStep"];function cleanupTypeImports(programNode,disallowList2){let usedIdentifiers=new Set;try{(0,import_babel2.traverse)(programNode,{Identifier(path7){path7.findParent(p=>p.isImportDeclaration())||usedIdentifiers.add(path7.node.name)},noScope:!0})}catch{}return programNode.body.filter(node=>{if(import_babel2.types.isImportDeclaration(node)){let{source,specifiers}=node;if(source.value.startsWith("@storybook/")){let allowedSpecifiers=specifiers.filter(specifier=>{if(import_babel2.types.isImportSpecifier(specifier)&&import_babel2.types.isIdentifier(specifier.imported)){let name=specifier.imported.name;return!disallowList2.includes(name)||usedIdentifiers.has(name)}return!0});return allowedSpecifiers.length>0?(node.specifiers=allowedSpecifiers,!0):!1}}return!0})}function removeExportDeclarations(programNode,exportDecls){return programNode.body.filter(node=>{if(import_babel2.types.isExportNamedDeclaration(node)&&node.declaration){if(import_babel2.types.isVariableDeclaration(node.declaration))return node.declaration.declarations=node.declaration.declarations.filter(decl=>import_babel2.types.isIdentifier(decl.id)&&!exportDecls[decl.id.name]),node.declaration.declarations.length>0;if(import_babel2.types.isFunctionDeclaration(node.declaration)){let funcDecl=node.declaration;return import_babel2.types.isIdentifier(funcDecl.id)&&!exportDecls[funcDecl.id.name]}}return!0})}function getConfigProperties(exportDecls,options){let properties=[];for(let[name,decl]of Object.entries(exportDecls))options.configType==="preview"&&!projectAnnotationNames.includes(name)||(import_babel2.types.isVariableDeclarator(decl)&&decl.init?properties.push(import_babel2.types.objectProperty(import_babel2.types.identifier(name),decl.init)):import_babel2.types.isFunctionDeclaration(decl)&&properties.push(import_babel2.types.objectProperty(import_babel2.types.identifier(name),import_babel2.types.arrowFunctionExpression([],decl.body))));return properties}async function configToCsfFactory(info,{configType,frameworkPackage},{dryRun=!1,skipFormatting=!1}={}){let config=(0,import_csf_tools3.loadConfig)(info.source);try{config.parse()}catch(err){return import_node_logger9.logger.log(`Error when parsing ${info.path}, skipping:
|
|
124
|
+
${err}`),info.source}let methodName=configType==="main"?"defineMain":"definePreview",programNode=config._ast.program,exportDecls=config._exportDecls,defineConfigProps=getConfigProperties(exportDecls,{configType}),hasNamedExports=defineConfigProps.length>0;if(config._exportsObject&&hasNamedExports)config._exportsObject.properties.push(...defineConfigProps),programNode.body=removeExportDeclarations(programNode,exportDecls);else if(config._exportsObject){let defineConfigCall=import_babel3.types.callExpression(import_babel3.types.identifier(methodName),[config._exportsObject]),exportDefaultNode=null,declarationNodeIndex=-1;programNode.body.forEach(node=>{if(import_babel3.types.isExportDefaultDeclaration(node)&&import_babel3.types.isIdentifier(node.declaration)){let declarationName=node.declaration.name;if(declarationNodeIndex=programNode.body.findIndex(n=>import_babel3.types.isVariableDeclaration(n)&&n.declarations.some(d=>import_babel3.types.isIdentifier(d.id)&&d.id.name===declarationName&&import_babel3.types.isObjectExpression(d.init))),declarationNodeIndex!==-1){exportDefaultNode=node;let declarationNode=programNode.body[declarationNodeIndex];if(import_babel3.types.isVariableDeclaration(declarationNode)){let id=declarationNode.declarations[0].id;import_babel3.types.isIdentifier(id)&&id.name&&programNode.body.splice(declarationNodeIndex,1)}}}else import_babel3.types.isExportDefaultDeclaration(node)&&import_babel3.types.isObjectExpression(node.declaration)&&(exportDefaultNode=node)}),exportDefaultNode!==null&&(exportDefaultNode.declaration=defineConfigCall)}else if(hasNamedExports){let defineConfigCall=import_babel3.types.callExpression(import_babel3.types.identifier(methodName),[import_babel3.types.objectExpression(defineConfigProps)]);programNode.body=removeExportDeclarations(programNode,exportDecls),programNode.body.push(import_babel3.types.exportDefaultDeclaration(defineConfigCall))}let configImport=import_babel3.types.importDeclaration([import_babel3.types.importSpecifier(import_babel3.types.identifier(methodName),import_babel3.types.identifier(methodName))],import_babel3.types.stringLiteral(frameworkPackage+`${configType==="main"?"/node":""}`)),existingImport=programNode.body.find(node=>import_babel3.types.isImportDeclaration(node)&&node.importKind!=="type"&&node.source.value===configImport.source.value);existingImport&&import_babel3.types.isImportDeclaration(existingImport)?existingImport.specifiers.some(specifier=>import_babel3.types.isImportSpecifier(specifier)&&import_babel3.types.isIdentifier(specifier.imported)&&specifier.imported.name===methodName)||existingImport.specifiers.push(import_babel3.types.importSpecifier(import_babel3.types.identifier(methodName),import_babel3.types.identifier(methodName))):programNode.body.unshift(configImport);let disallowList2=["StorybookConfig","Preview"];programNode.body=cleanupTypeImports(programNode,disallowList2);let output=(0,import_csf_tools3.printConfig)(config).code;return dryRun?(import_node_logger9.logger.log(`Would write to ${import_picocolors8.default.yellow(info.path)}:
|
|
125
|
+
${import_picocolors8.default.green(output)}`),info.source):skipFormatting?output:(0,import_common12.formatFileContent)(info.path,output)}var import_babel4=require("storybook/internal/babel"),import_csf_tools4=require("storybook/internal/csf-tools"),import_node_logger10=require("storybook/internal/node-logger"),import_path=__toESM(require("path"),1);var reuseDisallowList=["play","run","extends","story"],typesDisallowList=["Story","StoryFn","StoryObj","Meta","MetaObj","ComponentStory","ComponentMeta"];async function storyToCsfFactory(info,{previewConfigPath,useSubPathImports}){let csf=(0,import_csf_tools4.loadCsf)(info.source,{makeTitle:()=>"FIXME"});try{csf.parse()}catch(err){return import_node_logger10.logger.log(`Error when parsing ${info.path}, skipping:
|
|
126
|
+
${err}`),info.source}let metaVariableName=csf._metaVariableName??"meta",programNode=csf._ast.program,previewImport,hasRootLevelConfig=programNode.body.some(n=>import_babel4.types.isVariableDeclaration(n)&&n.declarations.some(declaration=>import_babel4.types.isIdentifier(declaration.id,{name:"preview"}))),previewPath="#.storybook/preview";if(!useSubPathImports){let relativePath=import_path.default.relative(import_path.default.dirname(info.path),previewConfigPath),{dir,name}=import_path.default.parse(relativePath);previewPath=`${dir?`${dir}/`:""}${name}`,previewPath.startsWith(".")||(previewPath=`./${previewPath}`),previewPath=previewPath.replace(/\\/g,"/")}let sbConfigImportName=hasRootLevelConfig?"storybookPreview":"preview",sbConfigImportSpecifier=import_babel4.types.importDefaultSpecifier(import_babel4.types.identifier(sbConfigImportName));programNode.body.forEach(node=>{if(import_babel4.types.isImportDeclaration(node)&&(0,import_csf_tools4.isValidPreviewPath)(node.source.value)){let defaultImportSpecifier=node.specifiers.find(specifier=>import_babel4.types.isImportDefaultSpecifier(specifier));defaultImportSpecifier?defaultImportSpecifier.local.name!==sbConfigImportName&&(sbConfigImportName=defaultImportSpecifier.local.name):node.specifiers.push(sbConfigImportSpecifier),previewImport=node}});let hasMeta=!!csf._meta;Object.entries(csf._storyExports).forEach(([_key,decl])=>{let id=decl.id,declarator=decl,init=import_babel4.types.isVariableDeclarator(declarator)?declarator.init:void 0;import_babel4.types.isIdentifier(id)&&init&&(id.typeAnnotation&&(id.typeAnnotation=null),(import_babel4.types.isTSSatisfiesExpression(init)||import_babel4.types.isTSAsExpression(init))&&(init=init.expression),import_babel4.types.isObjectExpression(init)?declarator.init=import_babel4.types.callExpression(import_babel4.types.memberExpression(import_babel4.types.identifier(metaVariableName),import_babel4.types.identifier("story")),init.properties.length===0?[]:[init]):import_babel4.types.isArrowFunctionExpression(init)&&(declarator.init=import_babel4.types.callExpression(import_babel4.types.memberExpression(import_babel4.types.identifier(metaVariableName),import_babel4.types.identifier("story")),[init])))});let storyExportDecls=new Map(Object.entries(csf._storyExports).filter(entry=>!import_babel4.types.isFunctionDeclaration(entry[1])));if((0,import_babel4.traverse)(csf._ast,{Identifier(nodePath2){let identifierName=nodePath2.node.name,binding=nodePath2.scope.getBinding(identifierName);if(binding&&storyExportDecls.has(binding.identifier.name)||identifierName===metaVariableName){let parent=nodePath2.parent;if(import_babel4.types.isVariableDeclarator(parent)&&parent.id===nodePath2.node||import_babel4.types.isImportSpecifier(parent)||import_babel4.types.isExportSpecifier(parent)||import_babel4.types.isExportDefaultDeclaration(parent)||import_babel4.types.isMemberExpression(parent)&&import_babel4.types.isIdentifier(parent.property,{name:"input"})||import_babel4.types.isMemberExpression(parent)&&import_babel4.types.isIdentifier(parent.property)&&reuseDisallowList.includes(parent.property.name))return;try{nodePath2.replaceWith(import_babel4.types.memberExpression(import_babel4.types.identifier(identifierName),import_babel4.types.identifier("input")))}catch(err){if(err.message.includes('instead got "MemberExpression"'))return;throw err}}}}),csf._metaPath){let declaration=csf._metaPath.node.declaration;if((import_babel4.types.isTSSatisfiesExpression(declaration)||import_babel4.types.isTSAsExpression(declaration))&&(declaration=declaration.expression),import_babel4.types.isObjectExpression(declaration)){let metaVariable=import_babel4.types.variableDeclaration("const",[import_babel4.types.variableDeclarator(import_babel4.types.identifier(metaVariableName),import_babel4.types.callExpression(import_babel4.types.memberExpression(import_babel4.types.identifier(sbConfigImportName),import_babel4.types.identifier("meta")),[declaration]))]);csf._metaPath.replaceWith(metaVariable)}else if(import_babel4.types.isIdentifier(declaration)){let binding=csf._metaPath.scope.getBinding(declaration.name);if(binding&&binding.path.isVariableDeclarator()){let originalName=declaration.name;binding.path.node.id=import_babel4.types.identifier(metaVariableName);let init=binding.path.node.init;(import_babel4.types.isTSSatisfiesExpression(init)||import_babel4.types.isTSAsExpression(init))&&(init=init.expression),import_babel4.types.isObjectExpression(init)&&(binding.path.node.init=import_babel4.types.callExpression(import_babel4.types.memberExpression(import_babel4.types.identifier(sbConfigImportName),import_babel4.types.identifier("meta")),[init])),csf._metaPath.scope.rename(originalName,metaVariableName)}csf._metaPath.remove()}}if(previewImport)previewImport.source.value!==previewPath&&(previewImport.source=import_babel4.types.stringLiteral(previewPath));else if(hasMeta){let configImport=import_babel4.types.importDeclaration([import_babel4.types.importDefaultSpecifier(import_babel4.types.identifier(sbConfigImportName))],import_babel4.types.stringLiteral(previewPath));programNode.body.unshift(configImport)}return programNode.body.forEach((node,index)=>{import_babel4.types.isTSTypeAliasDeclaration(node)&&(programNode.body.some(otherNode=>import_babel4.types.isVariableDeclaration(otherNode)?otherNode.declarations.some(declaration=>import_babel4.types.isIdentifier(declaration.init)&&declaration.init.name===node.id.name):!1)||programNode.body.splice(index,1))}),programNode.body=cleanupTypeImports(programNode,typesDisallowList),(0,import_csf_tools4.printCsf)(csf).code}async function runStoriesCodemod(options){let{dryRun,packageManager,...codemodOptions}=options;try{let globString="{stories,src}/**/{Button,Header,Page}.stories.*";process.env.IN_STORYBOOK_SANDBOX||(import_node_logger11.logger.log("Please enter the glob for your stories to migrate"),globString=await import_node_logger11.prompt.text({message:"glob",initialValue:"src/**/*.stories.*"})),import_node_logger11.logger.log(`
|
|
127
|
+
\u{1F6E0}\uFE0F Applying codemod on your stories, this might take some time...`),await packageManager.executeCommand({command:packageManager.getRemoteRunCommand("storybook",["migrate","csf-2-to-3","--glob",globString]),args:[],stdio:"ignore",ignoreError:!0}),await runCodemod(globString,info=>storyToCsfFactory(info,codemodOptions),{dryRun})}catch(err){if(err.message==="No files matched")await runStoriesCodemod(options);else throw err}}var csfFactories={id:"csf-factories",promptType:"command",async run({dryRun,mainConfig,mainConfigPath,previewConfigPath,packageManager,configDir}){let useSubPathImports=!0;process.env.IN_STORYBOOK_SANDBOX||(import_node_logger11.logger.logBox(import_ts_dedent7.dedent`
|
|
166
128
|
The CSF factories format benefits from subpath imports (the imports property in your \`package.json\`), which is a node standard for module resolution. This makes it more convenient to import the preview config in your story files.
|
|
167
129
|
|
|
168
130
|
However, please note that this might not work if you have an outdated tsconfig, use custom paths, or have type alias plugins configured in your project. You can always rerun this codemod and select another option to update your code later.
|
|
169
131
|
|
|
170
|
-
More info: ${
|
|
132
|
+
More info: ${import_picocolors9.default.yellow("https://storybook.js.org/docs/api/csf/csf-factories#subpath-imports")}
|
|
171
133
|
|
|
172
134
|
As we modify your story files, we can create two types of imports:
|
|
173
135
|
|
|
174
|
-
- ${
|
|
175
|
-
- ${
|
|
176
|
-
`)
|
|
177
|
-
\u{1F6E0}\uFE0F Applying codemod on your main config...`);let frameworkPackage=getFrameworkPackageName(mainConfig)||"@storybook/your-framework-here";await runCodemod(mainConfigPath,fileInfo=>configToCsfFactory(fileInfo,{configType:"main",frameworkPackage},{dryRun})),
|
|
178
|
-
\u{1F6E0}\uFE0F Applying codemod on your preview config...`),await runCodemod(previewConfigPath,fileInfo=>configToCsfFactory(fileInfo,{configType:"preview",frameworkPackage},{dryRun})),await(0,
|
|
136
|
+
- ${import_picocolors9.default.bold("Subpath imports (recommended):")} ${import_picocolors9.default.cyan("`import preview from '#.storybook/preview'`")}
|
|
137
|
+
- ${import_picocolors9.default.bold("Relative imports (suitable for mono repos):")} ${import_picocolors9.default.cyan("`import preview from '../../.storybook/preview'`")}
|
|
138
|
+
`),useSubPathImports=await import_node_logger11.prompt.select({message:"Which would you like to use?",options:[{label:"Subpath imports",value:!0},{label:"Relative imports",value:!1}]}));let{packageJson}=packageManager.primaryPackageJson;useSubPathImports&&!packageJson.imports?.["#*"]&&(import_node_logger11.logger.log(`\u{1F5FA}\uFE0F Adding imports map in ${import_picocolors9.default.cyan(packageManager.primaryPackageJson.packageJsonPath)}`),packageJson.imports={...packageJson.imports,"#*":["./*","./*.ts","./*.tsx","./*.js","./*.jsx"]},packageManager.writePackageJson(packageJson)),await runStoriesCodemod({dryRun,packageManager,useSubPathImports,previewConfigPath}),import_node_logger11.logger.log(`
|
|
139
|
+
\u{1F6E0}\uFE0F Applying codemod on your main config...`);let frameworkPackage=getFrameworkPackageName(mainConfig)||"@storybook/your-framework-here";await runCodemod(mainConfigPath,fileInfo=>configToCsfFactory(fileInfo,{configType:"main",frameworkPackage},{dryRun})),import_node_logger11.logger.log(`
|
|
140
|
+
\u{1F6E0}\uFE0F Applying codemod on your preview config...`),await runCodemod(previewConfigPath,fileInfo=>configToCsfFactory(fileInfo,{configType:"preview",frameworkPackage},{dryRun})),await(0,import_common13.syncStorybookAddons)(mainConfig,previewConfigPath,configDir),import_node_logger11.logger.logBox(import_ts_dedent7.dedent`
|
|
179
141
|
You can now run Storybook with the new CSF factories format.
|
|
180
142
|
|
|
181
143
|
For more info, check out the docs:
|
|
182
|
-
${
|
|
183
|
-
`)
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
${
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
${
|
|
192
|
-
${
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
${
|
|
196
|
-
|
|
197
|
-
${
|
|
198
|
-
|
|
199
|
-
${
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
${
|
|
203
|
-
${
|
|
204
|
-
${
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
${import_picocolors9.default.green("+ }")}
|
|
208
|
-
${import_picocolors9.default.gray(" }")}
|
|
209
|
-
${import_picocolors9.default.gray("}")}
|
|
210
|
-
`);else{let fileExtensionPreviewFile=import_path2.default.extname(previewFile);prompt.push(import_ts_dedent5.dedent`
|
|
211
|
-
${counter++}) We have to update your ${import_picocolors9.default.cyan(`.storybook/preview${fileExtensionPreviewFile}`)} file to set up ${import_picocolors9.default.yellow("parameters.a11y.test")} from ${import_picocolors9.default.magenta("@storybook/addon-a11y")}.
|
|
212
|
-
`)}return(transformedPreviewCode===null||transformedSetupCode===null)&&prompt.push(import_ts_dedent5.dedent`
|
|
213
|
-
For more information, please refer to the accessibility addon documentation:
|
|
214
|
-
${import_picocolors9.default.cyan("https://storybook.js.org/docs/writing-tests/accessibility-testing#test-addon-integration")}
|
|
215
|
-
`),prompt.join(`
|
|
216
|
-
|
|
217
|
-
`)},async run({result}){let{setupFile,transformedSetupCode,transformedPreviewCode,previewFile}=result;transformedSetupCode&&setupFile&&(0,import_fs2.writeFileSync)(setupFile,transformedSetupCode,"utf8"),transformedPreviewCode&&previewFile&&(0,import_fs2.writeFileSync)(previewFile,transformedPreviewCode,"utf8")}};function transformSetupFile(source){let j=jscodeshift.withParser("ts"),root=j(source),importDeclaration=j.importDeclaration([j.importNamespaceSpecifier(j.identifier("a11yAddonAnnotations"))],j.literal("@storybook/addon-a11y/preview")),setProjectAnnotationsCall=root.find(j.CallExpression,{callee:{type:"Identifier",name:"setProjectAnnotations"}});if(setProjectAnnotationsCall.length===0)throw new Error("Could not find setProjectAnnotations call in vitest.setup file");return setProjectAnnotationsCall.forEach(p=>{if(p.value.arguments.length===1&&p.value.arguments[0].type==="ArrayExpression")p.value.arguments[0].elements.unshift(j.identifier("a11yAddonAnnotations"));else if(p.value.arguments.length===1&&p.value.arguments[0].type==="Identifier"){let arg=p.value.arguments[0];p.value.arguments[0]=j.arrayExpression([j.identifier("a11yAddonAnnotations"),arg])}}),root.get().node.program.body.unshift(importDeclaration),root.toSource()}function transformPreviewFile(source,filePath){if(!shouldPreviewFileBeTransformed(source))return source;let previewConfig=(0,import_csf_tools5.loadConfig)(source).parse();previewConfig.setFieldValue(["parameters","a11y","test"],"todo");let formattedPreviewConfig=(0,import_csf_tools5.formatConfig)(previewConfig),lines=formattedPreviewConfig.split(`
|
|
144
|
+
${import_picocolors9.default.yellow("https://storybook.js.org/docs/api/csf/csf-factories")}
|
|
145
|
+
`)}};var import_common14=require("storybook/internal/common"),import_csf_tools5=require("storybook/internal/csf-tools"),import_fs2=require("fs"),jscodeshift=__toESM(require("jscodeshift"),1),import_path2=__toESM(require("path"),1),import_picocolors10=__toESM(require_picocolors(),1),import_ts_dedent8=require("ts-dedent");var ADDON_ID="storybook/a11y",PANEL_ID=`${ADDON_ID}/panel`;var RESULT=`${ADDON_ID}/result`,REQUEST=`${ADDON_ID}/request`,RUNNING=`${ADDON_ID}/running`,ERROR=`${ADDON_ID}/error`,MANUAL=`${ADDON_ID}/manual`,SELECT=`${ADDON_ID}/select`,DOCUMENTATION_LINK="writing-tests/accessibility-testing",DOCUMENTATION_DISCREPANCY_LINK=`${DOCUMENTATION_LINK}#why-are-my-tests-failing-in-different-environments`;var ADDON_ID2="storybook/test",TEST_PROVIDER_ID=`${ADDON_ID2}/test-provider`;var DOCUMENTATION_LINK2="writing-tests/integrations/vitest-addon",DOCUMENTATION_FATAL_ERROR_LINK=`${DOCUMENTATION_LINK2}#what-happens-if-vitest-itself-has-an-error`;var SUPPORTED_FRAMEWORKS=["@storybook/nextjs","@storybook/nextjs-vite","@storybook/react-vite","@storybook/svelte-vite","@storybook/vue3-vite","@storybook/html-vite","@storybook/web-components-vite","@storybook/sveltekit","@storybook/react-native-web-vite"],storeOptions={id:ADDON_ID2,initialState:{config:{coverage:!1,a11y:!1},watching:!1,cancelling:!1,fatalError:void 0,indexUrl:void 0,previewAnnotations:[],currentRun:{triggeredBy:void 0,config:{coverage:!1,a11y:!1},componentTestCount:{success:0,error:0},a11yCount:{success:0,warning:0,error:0},storyIds:void 0,totalTestCount:void 0,startedAt:void 0,finishedAt:void 0,unhandledErrors:[],coverageSummary:void 0}}};var STORE_CHANNEL_EVENT_NAME=`UNIVERSAL_STORE:${storeOptions.id}`;init_mainConfigFile();var fileExtensions=[".js",".ts",".cts",".mts",".cjs",".mjs",".jsx",".tsx"],addonA11yAddonTest={id:"addon-a11y-addon-test",link:"https://storybook.js.org/docs/writing-tests/accessibility-testing#test-addon-integration",promptType:"auto",async check({mainConfig,configDir}){let addons=(0,import_common14.getAddonNames)(mainConfig),frameworkPackageName=getFrameworkPackageName(mainConfig),hasA11yAddon=!!addons.find(addon=>addon.includes("@storybook/addon-a11y")),hasTestAddon=!!addons.find(addon=>addon.includes("@storybook/addon-vitest"));if(!SUPPORTED_FRAMEWORKS.find(framework=>frameworkPackageName?.includes(framework))||!hasA11yAddon||!hasTestAddon||!configDir)return null;let vitestSetupFile=fileExtensions.map(ext=>import_path2.default.join(configDir,`vitest.setup${ext}`)).find(filePath=>(0,import_fs2.existsSync)(filePath))??null,previewFile=fileExtensions.map(ext=>import_path2.default.join(configDir,`preview${ext}`)).find(filePath=>(0,import_fs2.existsSync)(filePath))??null,skipVitestSetupTransformation=!1,skipPreviewTransformation=!1;if(vitestSetupFile&&previewFile){let vitestSetupSource=(0,import_fs2.readFileSync)(vitestSetupFile,"utf8"),previewSetupSource=(0,import_fs2.readFileSync)(previewFile,"utf8");if(skipVitestSetupTransformation=vitestSetupSource.includes("@storybook/addon-a11y"),skipPreviewTransformation=!shouldPreviewFileBeTransformed(previewSetupSource),skipVitestSetupTransformation&&skipPreviewTransformation)return null}let getTransformedSetupCode=()=>{if(!vitestSetupFile||skipVitestSetupTransformation)return null;try{let vitestSetupSource=(0,import_fs2.readFileSync)(vitestSetupFile,"utf8");return transformSetupFile(vitestSetupSource)}catch{return null}},getTransformedPreviewCode=()=>{if(!previewFile||skipPreviewTransformation)return null;try{let previewSetupSource=(0,import_fs2.readFileSync)(previewFile,"utf8");return transformPreviewFile(previewSetupSource,previewFile)}catch{return null}};return{setupFile:vitestSetupFile,previewFile,transformedSetupCode:getTransformedSetupCode(),transformedPreviewCode:await getTransformedPreviewCode(),skipVitestSetupTransformation,skipPreviewTransformation}},prompt(){return"We have detected that you have @storybook/addon-a11y and @storybook/addon-vitest installed. The automigration will configure both for the new testing experience in Storybook 9"},async run({result}){let counter=1,{transformedSetupCode,skipPreviewTransformation,skipVitestSetupTransformation,setupFile,previewFile,transformedPreviewCode}=result,errorMessage=[];if(skipVitestSetupTransformation||transformedSetupCode===null&&errorMessage.push(import_ts_dedent8.dedent`
|
|
146
|
+
${counter++}) We couldn't find or automatically update ${import_picocolors10.default.cyan(".storybook/vitest.setup.<ts|js>")} in your project to smoothly set up project annotations from ${import_picocolors10.default.magenta("@storybook/addon-a11y")}.
|
|
147
|
+
Please manually update your ${import_picocolors10.default.cyan("vitest.setup.ts")} file to include the following:
|
|
148
|
+
|
|
149
|
+
${import_picocolors10.default.gray("...")}
|
|
150
|
+
${import_picocolors10.default.green('+ import * as a11yAddonAnnotations from "@storybook/addon-a11y/preview";')}
|
|
151
|
+
|
|
152
|
+
${import_picocolors10.default.gray("setProjectAnnotations([")}
|
|
153
|
+
${import_picocolors10.default.gray(" ...")}
|
|
154
|
+
${import_picocolors10.default.green("+ a11yAddonAnnotations,")}
|
|
155
|
+
${import_picocolors10.default.gray("]);")}
|
|
156
|
+
`),skipPreviewTransformation||transformedPreviewCode===null&&errorMessage.push(import_ts_dedent8.dedent`
|
|
157
|
+
${counter++}) We couldn't find or automatically update your .storybook/preview.<ts|js> in your project to smoothly set up ${import_picocolors10.default.cyan("parameters.a11y.test")} from @storybook/addon-a11y. Please manually update your .storybook/preview.<ts|js> file to include the following:
|
|
158
|
+
|
|
159
|
+
${import_picocolors10.default.gray("export default {")}
|
|
160
|
+
${import_picocolors10.default.gray(" ...")}
|
|
161
|
+
${import_picocolors10.default.gray(" parameters: {")}
|
|
162
|
+
${import_picocolors10.default.green("+ a11y: {")}
|
|
163
|
+
${import_picocolors10.default.gray('+ test: "todo"')}
|
|
164
|
+
${import_picocolors10.default.green("+ }")}
|
|
165
|
+
${import_picocolors10.default.gray(" }")}
|
|
166
|
+
${import_picocolors10.default.gray("}")}
|
|
167
|
+
`),errorMessage.length>0)throw new Error(import_ts_dedent8.dedent`The ${this.id} automigration couldn't make the changes but here are instructions for doing them yourself:\n${errorMessage.join(`
|
|
168
|
+
`)}`);transformedSetupCode&&setupFile&&(0,import_fs2.writeFileSync)(setupFile,transformedSetupCode,"utf8"),transformedPreviewCode&&previewFile&&(0,import_fs2.writeFileSync)(previewFile,transformedPreviewCode,"utf8")}};function transformSetupFile(source){let j=jscodeshift.withParser("ts"),root=j(source),importDeclaration=j.importDeclaration([j.importNamespaceSpecifier(j.identifier("a11yAddonAnnotations"))],j.literal("@storybook/addon-a11y/preview")),setProjectAnnotationsCall=root.find(j.CallExpression,{callee:{type:"Identifier",name:"setProjectAnnotations"}});if(setProjectAnnotationsCall.length===0)throw new Error("Could not find setProjectAnnotations call in vitest.setup file");return setProjectAnnotationsCall.forEach(p=>{if(p.value.arguments.length===1&&p.value.arguments[0].type==="ArrayExpression")p.value.arguments[0].elements.unshift(j.identifier("a11yAddonAnnotations"));else if(p.value.arguments.length===1&&p.value.arguments[0].type==="Identifier"){let arg=p.value.arguments[0];p.value.arguments[0]=j.arrayExpression([j.identifier("a11yAddonAnnotations"),arg])}}),root.get().node.program.body.unshift(importDeclaration),root.toSource()}function transformPreviewFile(source,filePath){if(!shouldPreviewFileBeTransformed(source))return source;let previewConfig=(0,import_csf_tools5.loadConfig)(source).parse();previewConfig.setFieldValue(["parameters","a11y","test"],"todo");let formattedPreviewConfig=(0,import_csf_tools5.formatConfig)(previewConfig),lines=formattedPreviewConfig.split(`
|
|
218
169
|
`),parametersLineIndex=lines.findIndex(line=>line.includes('test: "todo"')||line.includes("test: 'todo'"));if(parametersLineIndex===-1)return formattedPreviewConfig;let indentation=lines[parametersLineIndex]?.match(/^\s*/)?.[0],comment=`${indentation}// 'todo' - show a11y violations in the test UI only
|
|
219
170
|
${indentation}// 'error' - fail CI on a11y violations
|
|
220
|
-
${indentation}// 'off' - skip a11y checks entirely`;return lines.splice(parametersLineIndex,0,comment),(0,
|
|
221
|
-
`))}function shouldPreviewFileBeTransformed(source){return!(0,import_csf_tools5.loadConfig)(source).parse().getFieldNode(["parameters","a11y","test"])}var
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
The a11y addon has removed the ${import_picocolors10.default.yellow("element")} parameter and replaced it with the ${import_picocolors10.default.yellow("context")} parameter:
|
|
225
|
-
${import_picocolors10.default.yellow("parameters.a11y.element")} -> ${import_picocolors10.default.yellow("parameters.a11y.context")}
|
|
226
|
-
|
|
227
|
-
This change affects how accessibility checks are scoped in your stories and allows you to have more flexibility in defining the scope of your checks such as including or excluding multiple elements. We can update your code automatically.
|
|
228
|
-
|
|
229
|
-
More info: ${import_picocolors10.default.cyan("https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#a11y-addon-replace-element-parameter-with-context-parameter")}
|
|
230
|
-
|
|
231
|
-
Would you like to update these files to use the new parameter name?
|
|
232
|
-
`,run:async options=>{let{result,dryRun=!1}=options,{storyFilesToUpdate,previewFileToUpdate}=result,errors=[];if(previewFileToUpdate){let content=await(0,import_promises2.readFile)(previewFileToUpdate,"utf-8"),code=transformPreviewA11yParameters(content);if(code)if(dryRun)logger5.log("Would have updated",code.fileName);else try{await(0,import_csf_tools7.writeConfig)(code,previewFileToUpdate)}catch(error){errors.push({file:previewFileToUpdate,error})}}let{default:pLimit}=await import("p-limit"),limit=pLimit(10);if(await Promise.all(storyFilesToUpdate.map(file=>limit(async()=>{try{let content=await(0,import_promises2.readFile)(file,"utf-8"),code=transformStoryA11yParameters(content);code&&(dryRun?logger5.log("Would have updated",file):await(0,import_csf_tools7.writeCsf)(code,file))}catch(error){errors.push({file,error})}}))),errors.length>0)throw new Error(`Failed to process ${errors.length} files:
|
|
171
|
+
${indentation}// 'off' - skip a11y checks entirely`;return lines.splice(parametersLineIndex,0,comment),(0,import_common14.formatFileContent)(filePath,lines.join(`
|
|
172
|
+
`))}function shouldPreviewFileBeTransformed(source){return!(0,import_csf_tools5.loadConfig)(source).parse().getFieldNode(["parameters","a11y","test"])}var import_promises4=require("fs/promises"),import_csf_tools7=require("storybook/internal/csf-tools"),import_node_logger12=require("storybook/internal/node-logger"),import_picocolors11=__toESM(require_picocolors(),1),import_ts_dedent9=require("ts-dedent");var import_babel5=require("storybook/internal/babel"),import_csf_tools6=require("storybook/internal/csf-tools"),isStoryAnnotation=(stmt,objectExports)=>import_babel5.types.isExpressionStatement(stmt)&&import_babel5.types.isAssignmentExpression(stmt.expression)&&import_babel5.types.isMemberExpression(stmt.expression.left)&&import_babel5.types.isIdentifier(stmt.expression.left.object)&&objectExports[stmt.expression.left.object.name];function migrateA11yParameters(obj){let parametersProp=obj.properties.find(prop=>import_babel5.types.isObjectProperty(prop)&&import_babel5.types.isIdentifier(prop.key)&&prop.key.name==="parameters");if(parametersProp&&import_babel5.types.isObjectProperty(parametersProp)){let a11yProp=parametersProp.value.properties.find(prop=>import_babel5.types.isObjectProperty(prop)&&import_babel5.types.isIdentifier(prop.key)&&prop.key.name==="a11y");if(a11yProp&&import_babel5.types.isObjectProperty(a11yProp)){let elementProp=a11yProp.value.properties.find(prop=>import_babel5.types.isObjectProperty(prop)&&import_babel5.types.isIdentifier(prop.key)&&prop.key.name==="element");if(elementProp&&import_babel5.types.isObjectProperty(elementProp))return elementProp.key=import_babel5.types.identifier("context"),!0}}return!1}function transformStoryA11yParameters(code){let parsed=(0,import_csf_tools6.loadCsf)(code,{makeTitle:title=>title||"default"}).parse(),hasChanges=!1;return import_babel5.types.isObjectExpression(parsed._metaNode)&&migrateA11yParameters(parsed._metaNode)&&(hasChanges=!0),parsed._ast.program.body.forEach(stmt=>{let statement=stmt;isStoryAnnotation(statement,parsed._storyExports)&&import_babel5.types.isExpressionStatement(statement)&&import_babel5.types.isAssignmentExpression(statement.expression)&&import_babel5.types.isObjectExpression(statement.expression.right)&&statement.expression.right.properties.forEach(param=>{if(import_babel5.types.isObjectProperty(param)&&import_babel5.types.isIdentifier(param.key)&¶m.key.name==="a11y"){let elementProp=param.value.properties.find(prop=>import_babel5.types.isObjectProperty(prop)&&import_babel5.types.isIdentifier(prop.key)&&prop.key.name==="element");elementProp&&import_babel5.types.isObjectProperty(elementProp)&&(elementProp.key=import_babel5.types.identifier("context"),hasChanges=!0)}})}),Object.values(parsed._storyExports).forEach(declaration=>{let declarator=declaration,init=import_babel5.types.isVariableDeclarator(declarator)?declarator.init:void 0;(import_babel5.types.isTSSatisfiesExpression(init)||import_babel5.types.isTSAsExpression(init))&&(init=init.expression),import_babel5.types.isObjectExpression(init)&&migrateA11yParameters(init)&&(hasChanges=!0)}),hasChanges?parsed:null}function transformPreviewA11yParameters(code){let parsed=(0,import_csf_tools6.loadConfig)(code).parse();return parsed._exportsObject&&import_babel5.types.isObjectExpression(parsed._exportsObject)&&migrateA11yParameters(parsed._exportsObject)?parsed:null}var addonA11yParameters={id:"addon-a11y-parameters",link:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#a11y-addon-replace-element-parameter-with-context-parameter",check:async({mainConfig,previewConfigPath,storiesPaths})=>{if(!mainConfig.addons?.some(addon=>typeof addon=="string"?addon==="@storybook/addon-a11y":addon.name==="@storybook/addon-a11y"))return null;let maybeHasA11yParameter=content=>content.includes("a11y:")&&content.includes("element:"),storyFilesWithA11y=(await Promise.all(storiesPaths.map(async file=>{let content=await(0,import_promises4.readFile)(file,"utf-8");return maybeHasA11yParameter(content)?file:null}))).filter(file=>file!==null),hasA11yConfigInPreview=!1;if(previewConfigPath){let content=await(0,import_promises4.readFile)(previewConfigPath,"utf-8");hasA11yConfigInPreview=maybeHasA11yParameter(content)}return storyFilesWithA11y.length===0&&!hasA11yConfigInPreview?null:{storyFilesToUpdate:storyFilesWithA11y,previewFileToUpdate:hasA11yConfigInPreview?previewConfigPath:void 0}},prompt:()=>import_ts_dedent9.dedent`
|
|
173
|
+
The a11y addon has replaced ${import_picocolors11.default.yellow("parameters.a11y.element")} with ${import_picocolors11.default.yellow("parameters.a11y.context")} for more flexible accessibility check scoping.
|
|
174
|
+
`,run:async options=>{let{result,dryRun=!1}=options,{storyFilesToUpdate,previewFileToUpdate}=result,errors=[];if(previewFileToUpdate){let content=await(0,import_promises4.readFile)(previewFileToUpdate,"utf-8"),code=transformPreviewA11yParameters(content);if(code)if(dryRun)import_node_logger12.logger.log(`Would have updated ${code.fileName}`);else try{await(0,import_csf_tools7.writeConfig)(code,previewFileToUpdate)}catch(error){errors.push({file:previewFileToUpdate,error})}}let{default:pLimit3}=await Promise.resolve().then(()=>(init_p_limit2(),p_limit_exports)),limit=pLimit3(10);if(await Promise.all(storyFilesToUpdate.map(file=>limit(async()=>{try{let content=await(0,import_promises4.readFile)(file,"utf-8"),code=transformStoryA11yParameters(content);code&&(dryRun?import_node_logger12.logger.log(`Would have updated ${file}`):await(0,import_csf_tools7.writeCsf)(code,file))}catch(error){errors.push({file,error})}}))),errors.length>0)throw new Error(`Failed to process ${errors.length} files:
|
|
233
175
|
${errors.map(({file,error})=>`- ${file}: ${error.message}`).join(`
|
|
234
|
-
`)}`)}};var import_fs3=require("fs")
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
We can automatically migrate your project to use ${import_picocolors11.default.cyan("@storybook/addon-vitest")} instead.
|
|
239
|
-
|
|
240
|
-
This will update ${fileCount} file(s) and your package.json:
|
|
241
|
-
${fileList}${hasMoreFiles?`
|
|
242
|
-
... and ${fileCount-5} more files`:""}
|
|
243
|
-
`},async run({result:{matchingFiles},packageManager,dryRun}){for(let file of matchingFiles){let updatedContent=(0,import_fs3.readFileSync)(file,"utf-8").replace(/@storybook\/experimental-addon-test/g,"@storybook/addon-vitest");file.includes("vitest.setup")&&(updatedContent=updatedContent.replace(/^\s*beforeAll.*\n?/gm,"")),dryRun||(0,import_fs3.writeFileSync)(file,updatedContent,"utf-8")}if(!dryRun){let devDependencies=(await packageManager.retrievePackageJson()).devDependencies??{},storybookVersion=await packageManager.getPackageVersion("storybook"),isExperimentalAddonTestDevDependency=Object.keys(devDependencies).includes("@storybook/experimental-addon-test");await packageManager.removeDependencies({},["@storybook/experimental-addon-test"]),await packageManager.addDependencies({installAsDevDependencies:isExperimentalAddonTestDevDependency},[`@storybook/addon-vitest@${storybookVersion}`])}logger6.info(import_ts_dedent7.dedent`
|
|
244
|
-
✅ Successfully migrated from ${import_picocolors11.default.cyan("@storybook/experimental-addon-test")} to ${import_picocolors11.default.cyan("@storybook/addon-vitest")}
|
|
245
|
-
✅ Updated package.json dependency
|
|
246
|
-
✅ Updated ${matchingFiles.length} file(s)
|
|
247
|
-
`)}};var import_common13=require("storybook/internal/common"),import_picocolors12=__toESM(require_picocolors(),1),import_ts_dedent8=require("ts-dedent"),addonMdxGfmRemove={id:"addon-mdx-gfm-remove",versionRange:["<9.0.0","^9.0.0-0 || ^9.0.0"],async check({mainConfigPath,mainConfig}){if(!mainConfigPath)return null;try{let hasMdxGfm=(0,import_common13.getAddonNames)(mainConfig).includes("@storybook/addon-mdx-gfm");return hasMdxGfm?{hasMdxGfm}:null}catch{return null}},prompt(){return import_ts_dedent8.dedent`
|
|
248
|
-
We've detected that you have ${import_picocolors12.default.yellow("@storybook/addon-mdx-gfm")} installed.
|
|
249
|
-
|
|
250
|
-
This package has been removed in Storybook 9.0. We'll remove it from your configuration and dependencies.
|
|
251
|
-
`},async run({packageManager,configDir}){await packageManager.runPackageCommand("storybook",["remove","@storybook/addon-mdx-gfm","--config-dir",configDir])}};var import_common14=require("storybook/internal/common"),import_picocolors13=__toESM(require_picocolors(),1),import_ts_dedent9=require("ts-dedent");var logger7=console,addonStorysourceCodePanel={id:"addon-storysource-code-panel",versionRange:["<9.0.0","^9.0.0-0 || ^9.0.0"],async check({mainConfigPath,mainConfig}){if(!mainConfigPath)return null;let addonNames=(0,import_common14.getAddonNames)(mainConfig),hasStorysource=addonNames.includes("@storybook/addon-storysource"),hasDocs=addonNames.includes("@storybook/addon-docs");return hasStorysource?{hasStorysource,hasDocs}:null},prompt:({hasDocs})=>import_ts_dedent9.dedent`
|
|
252
|
-
We've detected that you're using ${import_picocolors13.default.yellow("@storybook/addon-storysource")}.
|
|
253
|
-
|
|
254
|
-
The ${import_picocolors13.default.yellow("@storybook/addon-storysource")} addon is being removed in Storybook 9.0.
|
|
255
|
-
Instead, Storybook now provides a Code Panel via ${import_picocolors13.default.yellow("@storybook/addon-docs")}
|
|
256
|
-
that offers similar functionality with improved integration and performance.
|
|
257
|
-
|
|
258
|
-
We'll remove ${import_picocolors13.default.yellow("@storybook/addon-storysource")} from your project and
|
|
259
|
-
enable the Code Panel in your preview configuration. ${hasDocs?"":`Additionally, we will install ${import_picocolors13.default.yellow("@storybook/addon-docs")} for you.`}
|
|
260
|
-
|
|
261
|
-
More info: ${import_picocolors13.default.cyan("https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#storysource-addon-removed")}
|
|
262
|
-
`,run:async options=>{let{result,dryRun=!1,packageManager,configDir,previewConfigPath}=options,{hasStorysource,hasDocs}=result,errors=[];if(hasStorysource){if(!dryRun)if(logger7.log("Removing @storybook/addon-storysource..."),await packageManager.runPackageCommand("storybook",["remove","@storybook/addon-storysource","--config-dir",configDir]),hasDocs||(logger7.log("Installing @storybook/addon-docs..."),await packageManager.runPackageCommand("storybook",["add","@storybook/addon-docs","--config-dir",configDir])),previewConfigPath)try{await updateMainConfig({mainConfigPath:previewConfigPath,dryRun},previewConfig=>{previewConfig.setFieldValue(["parameters","docs","codePanel"],!0)})}catch(error){console.log(error),errors.push({file:previewConfigPath,error})}else logger7.log("No preview config file found. Please manually add code panel parameters."),logger7.log(import_ts_dedent9.dedent`
|
|
176
|
+
`)}`)}};var import_fs3=require("fs");init_util();var addonExperimentalTest={id:"addon-experimental-test",link:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#experimental-test-addon-stabilized-and-renamed",promptType:"auto",async check({packageManager}){if(!await packageManager.isPackageInstalled("@storybook/experimental-addon-test"))return null;let matchingFiles=findFilesUp([".storybook/**/*.*","vitest.*.{js,ts,mjs,cjs}","vite.config.{js,ts,mjs,cjs}"],packageManager.instanceDir),filesWithExperimentalAddon=[];for(let file of matchingFiles)try{(0,import_fs3.readFileSync)(file,"utf-8").includes("@storybook/experimental-addon-test")&&filesWithExperimentalAddon.push(file)}catch{}return{matchingFiles:filesWithExperimentalAddon}},prompt(){return"We'll migrate @storybook/experimental-addon-test to @storybook/addon-vitest"},async run({result:{matchingFiles},packageManager,dryRun,storybookVersion}){for(let file of matchingFiles){let updatedContent=(0,import_fs3.readFileSync)(file,"utf-8").replace(/@storybook\/experimental-addon-test/g,"@storybook/addon-vitest");file.includes("vitest.setup")&&(updatedContent=updatedContent.replace(/^\s*beforeAll.*\n?/gm,"")),dryRun||(0,import_fs3.writeFileSync)(file,updatedContent,"utf-8")}dryRun||(await packageManager.removeDependencies(["@storybook/experimental-addon-test"]),await packageManager.addDependencies({type:"devDependencies",skipInstall:!0},[`@storybook/addon-vitest@${storybookVersion}`]))}};var import_common15=require("storybook/internal/common"),addonMdxGfmRemove={id:"addon-mdx-gfm-remove",link:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#mdx-gfm-addon-removed",async check({mainConfigPath,mainConfig,packageManager}){if(!mainConfigPath)return null;try{let addonName="@storybook/addon-mdx-gfm",hasMdxGfm=(0,import_common15.getAddonNames)(mainConfig).includes(addonName),hasMdxGfmInDeps=packageManager.isDependencyInstalled(addonName);return!hasMdxGfm&&!hasMdxGfmInDeps?null:!0}catch{return null}},prompt(){return"We'll remove @storybook/addon-mdx-gfm as it's no longer needed in Storybook 9.0."},async run({packageManager,configDir}){await(0,import_common15.removeAddon)("@storybook/addon-mdx-gfm",{configDir,skipInstall:!0,packageManager})}};var import_common16=require("storybook/internal/common"),import_node_logger13=require("storybook/internal/node-logger"),import_ts_dedent10=require("ts-dedent");init_mainConfigFile();var addonStorysourceCodePanel={id:"addon-storysource-code-panel",link:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#storysource-addon-removed",async check({mainConfigPath,mainConfig}){if(!mainConfigPath)return null;let addonNames=(0,import_common16.getAddonNames)(mainConfig),hasStorysource=addonNames.includes("@storybook/addon-storysource"),hasDocs=addonNames.includes("@storybook/addon-docs");return hasStorysource?{hasStorysource,hasDocs}:null},prompt:()=>import_ts_dedent10.dedent`
|
|
177
|
+
We'll remove @storybook/addon-storysource and enable the Code Panel instead.
|
|
178
|
+
`,run:async options=>{let{result,dryRun=!1,packageManager,configDir,previewConfigPath}=options,{hasStorysource,hasDocs}=result,errors=[];if(hasStorysource){if(!dryRun)if(import_node_logger13.logger.debug("Removing @storybook/addon-storysource..."),await(0,import_common16.removeAddon)("@storybook/addon-storysource",{configDir,skipInstall:!0,packageManager}),hasDocs||(import_node_logger13.logger.log("Installing @storybook/addon-docs..."),await add("@storybook/addon-docs",{configDir,packageManager:packageManager.type,skipInstall:!0,skipPostinstall:!0,yes:!0})),previewConfigPath)try{await updateMainConfig({mainConfigPath:previewConfigPath,dryRun},previewConfig=>{previewConfig.setFieldValue(["parameters","docs","codePanel"],!0)})}catch(error){console.log(error),errors.push({file:previewConfigPath,error})}else import_node_logger13.logger.log("No preview config file found. Please manually add code panel parameters."),import_node_logger13.logger.log(import_ts_dedent10.dedent`
|
|
263
179
|
Add this to your .storybook/preview.js:
|
|
264
180
|
export const parameters = {
|
|
265
181
|
docs: {
|
|
@@ -267,152 +183,44 @@ ${errors.map(({file,error})=>`- ${file}: ${error.message}`).join(`
|
|
|
267
183
|
},
|
|
268
184
|
};`);if(errors.length>0)throw new Error(`Failed to process ${errors.length} files:
|
|
269
185
|
${errors.map(({file,error})=>`- ${file}: ${error.message}`).join(`
|
|
270
|
-
`)}`)}}};var
|
|
271
|
-
Found package.json files that contain consolidated or renamed Storybook packages that need to be updated:
|
|
272
|
-
${result.packageJsonFiles.map(file=>`- ${file}`).join(`
|
|
273
|
-
`)}
|
|
274
|
-
|
|
275
|
-
We will automatically rename the following packages:
|
|
276
|
-
${Array.from(result.consolidatedDeps).map(dep=>`- ${import_picocolors14.default.red(dep)} -> ${import_picocolors14.default.cyan(consolidatedPackages[dep])}`).join(`
|
|
277
|
-
`)}
|
|
278
|
-
|
|
279
|
-
These packages have been renamed or consolidated into the main ${import_picocolors14.default.cyan("storybook")} package and should be removed.
|
|
280
|
-
The main ${import_picocolors14.default.cyan("storybook")} package will be added to devDependencies if not already present.
|
|
281
|
-
|
|
282
|
-
Would you like to:
|
|
283
|
-
1. Update these package.json files
|
|
284
|
-
2. Scan your codebase and update any imports from these updated packages
|
|
285
|
-
|
|
286
|
-
This will ensure your project is properly updated to use the new updated package structure and to use the latest package names.
|
|
287
|
-
`,run:async options=>{let{result,dryRun=!1}=options,{packageJsonFiles}=result,errors=[],packageJsonErrors=await transformPackageJsonFiles(packageJsonFiles,dryRun);errors.push(...packageJsonErrors);let importErrors=await(0,import_common15.scanAndTransformFiles)({dryRun:!!dryRun,promptMessage:"Enter a custom glob pattern:",transformFn:import_common15.transformImportFiles,transformOptions:consolidatedPackages});if(errors.push(...importErrors),errors.length>0)throw new Error(`Failed to process ${errors.length} files:
|
|
186
|
+
`)}`)}}};var import_promises5=require("fs/promises"),import_common17=require("storybook/internal/common");function transformPackageJson(content){let packageJson=JSON.parse(content),hasChanges=!1,packagesToAdd=new Set,depTypes=["dependencies","devDependencies","peerDependencies"],storybookVersion=null,storybookDepType=null;for(let depType of depTypes)if(packageJson[depType]?.storybook){storybookVersion=packageJson[depType].storybook,storybookDepType=depType;break}for(let depType of depTypes)if(packageJson[depType]){for(let[dep]of Object.entries(packageJson[depType]))if(dep in consolidatedPackages){let newPackage=consolidatedPackages[dep];!newPackage.startsWith("storybook/")&&!newPackage.match(/(?:.*\/){2,}/)&&packagesToAdd.add(newPackage),delete packageJson[depType][dep],hasChanges=!0}}if(packagesToAdd.size>0){let version2=storybookVersion??import_common17.versions["@storybook/nextjs-vite"],depType=storybookDepType??"devDependencies";packageJson[depType]=packageJson[depType]||{};for(let pkg of packagesToAdd)packageJson[depType][pkg]=version2;hasChanges=!0}return hasChanges?JSON.stringify(packageJson,null,2):null}var transformPackageJsonFiles=async(files,dryRun)=>{let errors=[],{default:pLimit3}=await Promise.resolve().then(()=>(init_p_limit2(),p_limit_exports)),limit=pLimit3(10);return await Promise.all(files.map(file=>limit(async()=>{try{let contents=await(0,import_promises5.readFile)(file,"utf-8"),transformed=transformPackageJson(contents);!dryRun&&transformed&&await(0,import_promises5.writeFile)(file,transformed)}catch(error){errors.push({file,error})}}))),errors},consolidatedImports={id:"consolidated-imports",link:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#dropped-support-for-legacy-packages",check:async({packageManager})=>{let consolidatedDeps=new Set,affectedPackageJSONFiles=new Set;return await Promise.all(packageManager.packageJsonPaths.map(async packageJsonPath=>{let contents=await(0,import_promises5.readFile)(packageJsonPath,"utf-8"),packageJson=JSON.parse(contents),allDeps={...packageJson.dependencies||{},...packageJson.devDependencies||{}},hasConsolidatedDeps=!1;Object.keys(allDeps).forEach(dep=>{dep in consolidatedPackages&&(consolidatedDeps.add(dep),hasConsolidatedDeps=!0)}),hasConsolidatedDeps&&affectedPackageJSONFiles.add(packageJsonPath)})),consolidatedDeps.size===0?null:{consolidatedDeps}},prompt:()=>"We've detected Storybook packages that have been renamed or consolidated. We'll update these packages by scanning your codebase and updating any imports from these packages.",run:async({dryRun=!1,packageManager,storiesPaths,configDir})=>{let errors=[],packageJsonErrors=await transformPackageJsonFiles(packageManager.packageJsonPaths,dryRun);errors.push(...packageJsonErrors);let{globby:globby2}=await Promise.resolve().then(()=>(init_globby(),globby_exports)),configFiles=await globby2([`${configDir}/**/*`]),importErrors=await(0,import_common17.transformImportFiles)([...storiesPaths,...configFiles].filter(Boolean),consolidatedPackages,!!dryRun);if(errors.push(...importErrors),errors.length>0)throw new Error(`Failed to process ${errors.length} files:
|
|
288
187
|
${errors.map(({file,error})=>`- ${file}: ${error.message}`).join(`
|
|
289
|
-
`)}`)
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
In order to have the best experience with Storybook and follow best practices, we advise you to install eslint-plugin-storybook.
|
|
293
|
-
|
|
294
|
-
We can set it up automatically for you.
|
|
295
|
-
|
|
296
|
-
More info: ${import_picocolors15.default.yellow("https://storybook.js.org/docs/9/configure/integration/eslint-plugin")}
|
|
297
|
-
`},async run({result:{eslintConfigFile,unsupportedExtension,isFlatConfig},packageManager,dryRun,skipInstall,storybookVersion}){let deps=[`eslint-plugin-storybook@${storybookVersion}`];if(logger8.info(`\u2705 Adding dependencies: ${deps}`),dryRun||await packageManager.addDependencies({installAsDevDependencies:!0,skipInstall,packageJson:await packageManager.readPackageJson()},deps),!dryRun&&unsupportedExtension){logger8.info(import_ts_dedent11.dedent`
|
|
298
|
-
⚠️ The plugin was successfully installed but failed to be configured.
|
|
188
|
+
`)}`)}};var import_cli=require("storybook/internal/cli"),import_node_logger14=require("storybook/internal/node-logger"),import_ts_dedent11=require("ts-dedent"),eslintPlugin={id:"eslintPlugin",link:"https://storybook.js.org/docs/9/configure/integration/eslint-plugin",async check({packageManager}){let{hasEslint,eslintConfigFile,isStorybookPluginInstalled,unsupportedExtension,isFlatConfig}=await(0,import_cli.extractEslintInfo)(packageManager);return isStorybookPluginInstalled||!hasEslint?null:eslintConfigFile?{eslintConfigFile,unsupportedExtension,isFlatConfig}:(import_node_logger14.logger.warn("Unable to find eslint config file, skipping"),null)},prompt(){return"We'll install and configure the Storybook ESLint plugin for you."},async run({result:{eslintConfigFile,unsupportedExtension,isFlatConfig},packageManager,dryRun,storybookVersion}){let deps=[`eslint-plugin-storybook@${storybookVersion}`];if(import_node_logger14.logger.debug(`Adding dependencies: ${deps}`),dryRun||await packageManager.addDependencies({type:"devDependencies",skipInstall:!0},deps),!dryRun&&unsupportedExtension){import_node_logger14.logger.warn(import_ts_dedent11.dedent`
|
|
189
|
+
The plugin was successfully installed but failed to be configured.
|
|
299
190
|
|
|
300
191
|
Found an eslint config file with an unsupported automigration format: .eslintrc.${unsupportedExtension}.
|
|
301
192
|
The supported formats for this automigration are: ${import_cli.SUPPORTED_ESLINT_EXTENSIONS.join(", ")}.
|
|
302
193
|
|
|
303
194
|
Please refer to https://storybook.js.org/docs/configure/integration/eslint-plugin#configuration-eslintrc to finish setting up the plugin manually.
|
|
304
|
-
`);return}dryRun||await(0,import_cli.configureEslintPlugin)({eslintConfigFile,packageManager,isFlatConfig})}};var
|
|
305
|
-
The ${import_picocolors16.default.cyan("globals")} setting in ${import_picocolors16.default.cyan(previewConfigPath)} was removed
|
|
306
|
-
and has been renamed to ${import_picocolors16.default.cyan("initialGlobals")}.
|
|
307
|
-
|
|
308
|
-
Learn more: ${import_picocolors16.default.yellow(MIGRATION)}
|
|
309
|
-
|
|
310
|
-
Rename ${import_picocolors16.default.cyan("globals")} to ${import_picocolors16.default.cyan("initalGlobals")}?
|
|
311
|
-
`},async run({dryRun,result}){result.previewConfig.removeField(["globals"]),result.previewConfig.setFieldNode(["initialGlobals"],result.globals),dryRun||await(0,import_promises4.writeFile)(result.previewConfigPath,(0,import_csf_tools8.formatConfig)(result.previewConfig))}};var import_common16=require("storybook/internal/common"),import_picocolors17=__toESM(require_picocolors(),1),import_ts_dedent13=require("ts-dedent"),removeAddonInteractions={id:"removeAddonInteractions",versionRange:["<9.0.0","^9.0.0-0 || ^9.0.0"],async check({mainConfig}){return(0,import_common16.getAddonNames)(mainConfig).some(addon=>addon.includes("@storybook/addon-interactions"))?{}:null},prompt(){return import_ts_dedent13.dedent`
|
|
312
|
-
${import_picocolors17.default.magenta("@storybook/addon-interactions")} has been consolidated into Storybook core.
|
|
313
|
-
|
|
314
|
-
We'll remove it from your dependencies and unregister it from your Storybook configuration.
|
|
315
|
-
The functionality will continue to work as before, but now it's built into Storybook core.
|
|
316
|
-
`},async run({packageManager,dryRun,configDir}){dryRun||(console.log("Removing @storybook/addon-interactions..."),await packageManager.runPackageCommand("storybook",["remove","@storybook/addon-interactions","--config-dir",configDir]))}};var import_csf_tools9=require("storybook/internal/csf-tools"),import_picocolors18=__toESM(require_picocolors(),1),import_ts_dedent14=require("ts-dedent");var logger9={log:message=>{process.env.NODE_ENV!=="test"&&console.log(message)}},removeDocsAutodocs={id:"remove-docs-autodocs",versionRange:["<9.0.0","^9.0.0-0 || ^9.0.0"],async check({mainConfigPath}){if(!mainConfigPath)return null;try{let autodocs=(await(0,import_csf_tools9.readConfig)(mainConfigPath)).getSafeFieldValue(["docs","autodocs"]);return autodocs===void 0?null:{autodocs}}catch{return null}},prompt:()=>import_ts_dedent14.dedent`
|
|
317
|
-
The \`docs.autodocs\` field in Storybook's main configuration has been removed in Storybook 9.
|
|
318
|
-
This field was deprecated in Storybook 7-8 and is no longer supported.
|
|
319
|
-
|
|
320
|
-
We can make the necessary changes in your configuration automatically.
|
|
321
|
-
|
|
322
|
-
More info: https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#mainjs-docsautodocs-is-deprecated
|
|
323
|
-
`,async run({result,dryRun,mainConfigPath,previewConfigPath}){let{autodocs}=result;logger9.log(`\u{1F504} Updating ${import_picocolors18.default.cyan("docs")} parameter in main config file...`),await updateMainConfig({mainConfigPath,dryRun:!!dryRun},async main=>{let docs=main.getFieldValue(["docs"])||{};dryRun||(delete docs.autodocs,Object.keys(docs).length===0?main.removeField(["docs"]):main.setFieldValue(["docs"],docs))}),autodocs===!0&&previewConfigPath&&(logger9.log(`\u{1F504} Updating ${import_picocolors18.default.cyan("tags")} parameter in preview config file...`),await updateMainConfig({mainConfigPath:previewConfigPath,dryRun:!!dryRun},async preview=>{let tags=preview.getFieldValue(["tags"])||[];!tags.includes("autodocs")&&!dryRun&&preview.setFieldValue(["tags"],[...tags,"autodocs"])}))}};var import_common17=require("storybook/internal/common"),import_picocolors19=__toESM(require_picocolors(),1),import_ts_dedent15=require("ts-dedent");function moveEssentialOptions(dryRun,essentialsOptions){return async main=>{let features=main.getFieldValue(["features"])||{};dryRun||main.setFieldValue(["features"],{...features,...essentialsOptions})}}var consolidatedAddons={"@storybook/addon-actions":"storybook/actions","@storybook/addon-controls":"storybook/internal/controls","@storybook/addon-toolbars":"storybook/internal/toolbars","@storybook/addon-highlight":"storybook/highlight","@storybook/addon-measure":"storybook/measure","@storybook/addon-outline":"storybook/outline","@storybook/addon-backgrounds":"storybook/backgrounds","@storybook/addon-viewport":"storybook/viewport"},removeEssentials={id:"remove-essentials",versionRange:["<9.0.0","^9.0.0-0 || ^9.0.0"],async check({mainConfigPath,mainConfig,packageManager}){if(!mainConfigPath)return null;try{let hasEssentialsAddon=!1,hasDocsAddon=!1,hasDocsDisabled=!1,essentialsOptions,additionalAddonsToRemove=[],CORE_ADDONS=["@storybook/addon-actions","@storybook/addon-backgrounds","@storybook/addon-controls","@storybook/addon-highlight","@storybook/addon-measure","@storybook/addon-outline","@storybook/addon-toolbars","@storybook/addon-viewport"],addonNames=(0,import_common17.getAddonNames)(mainConfig);hasEssentialsAddon=addonNames.includes("@storybook/addon-essentials"),hasDocsAddon=addonNames.includes("@storybook/addon-docs");let packageJson=await packageManager.retrievePackageJson(),allDeps={...packageJson.dependencies,...packageJson.devDependencies},installedAddons=Object.keys(allDeps);for(let addon of CORE_ADDONS)(addonNames.includes(addon)||installedAddons.includes(addon))&&additionalAddonsToRemove.push(addon);if(hasEssentialsAddon){let essentialsEntry=mainConfig.addons?.find(addon=>typeof addon=="string"?addon.includes("@storybook/addon-essentials"):addon.name.includes("@storybook/addon-essentials"));if(typeof essentialsEntry=="object"){let options=essentialsEntry.options||{};hasDocsDisabled=options.docs===!1;let optionsExceptDocs=Object.fromEntries(Object.entries(options).filter(([key])=>key!=="docs"));Object.keys(optionsExceptDocs).length>0&&(essentialsOptions=optionsExceptDocs)}}if(!hasEssentialsAddon&&additionalAddonsToRemove.length===0)return null;let result={hasEssentials:hasEssentialsAddon,hasDocsDisabled,hasDocsAddon,additionalAddonsToRemove,allDeps,packageJson};return essentialsOptions&&(result.essentialsOptions=essentialsOptions),result}catch{return null}},prompt({hasDocsDisabled,additionalAddonsToRemove,hasEssentials}){let message="";hasEssentials&&(message=import_ts_dedent15.dedent`
|
|
324
|
-
We've detected that you have ${import_picocolors19.default.yellow("@storybook/addon-essentials")} installed.
|
|
325
|
-
|
|
326
|
-
In Storybook 9.0, all features from ${import_picocolors19.default.yellow("@storybook/addon-essentials")} (except docs)
|
|
327
|
-
have been moved into Storybook's core. You no longer need to install or configure them separately.
|
|
328
|
-
|
|
329
|
-
We'll remove ${import_picocolors19.default.yellow("@storybook/addon-essentials")} from your configuration and dependencies.
|
|
330
|
-
`);let additionalAddonsMessage=additionalAddonsToRemove.length>0?import_ts_dedent15.dedent`
|
|
331
|
-
${hasEssentials?"":"In Storybook 9.0, several features have been moved into Storybook's core."}\n\nWe've detected the following addons that are now part of Storybook core:
|
|
332
|
-
${additionalAddonsToRemove.map(addon=>`
|
|
333
|
-
- ${import_picocolors19.default.yellow(addon)}`).join("")}
|
|
334
|
-
|
|
335
|
-
These will be removed as they are no longer needed.
|
|
336
|
-
|
|
337
|
-
We'll also need to update your code to use the new core addons.`:"";return hasDocsDisabled?`${message}${additionalAddonsMessage}`:hasEssentials?import_ts_dedent15.dedent`
|
|
338
|
-
${message}${additionalAddonsMessage}
|
|
339
|
-
|
|
340
|
-
Since you were using the docs feature, we'll install ${import_picocolors19.default.yellow("@storybook/addon-docs")}
|
|
341
|
-
separately and add it to your configuration if it's not already present.
|
|
342
|
-
`:additionalAddonsMessage},async run({result,dryRun,packageManager,configDir,packageJson,mainConfigPath}){let{hasEssentials,hasDocsDisabled,hasDocsAddon,additionalAddonsToRemove,essentialsOptions}=result;if(!(!hasEssentials&&additionalAddonsToRemove.length===0)&&!dryRun){hasEssentials&&(console.log("Removing @storybook/addon-essentials..."),await packageManager.runPackageCommand("storybook",["remove","@storybook/addon-essentials","--config-dir",configDir]));for(let addon of additionalAddonsToRemove)await packageManager.runPackageCommand("storybook",["remove",addon,"--config-dir",configDir]);let errors=await(0,import_common17.scanAndTransformFiles)({dryRun:!!dryRun,transformFn:import_common17.transformImportFiles,transformOptions:consolidatedAddons});if(errors.length>0)throw new Error(`Failed to process ${errors.length} files:
|
|
195
|
+
`);return}dryRun||await(0,import_cli.configureEslintPlugin)({eslintConfigFile,packageManager,isFlatConfig})}};var import_promises6=require("fs/promises"),import_csf_tools8=require("storybook/internal/csf-tools"),import_picocolors12=__toESM(require_picocolors(),1),initialGlobals={id:"initial-globals",link:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#previewjs-globals-renamed-to-initialglobals",async check({previewConfigPath}){if(!previewConfigPath)return null;let previewConfig=(0,import_csf_tools8.loadConfig)((await(0,import_promises6.readFile)(previewConfigPath)).toString()).parse(),globals=previewConfig.getFieldNode(["globals"]);return globals?{globals,previewConfig,previewConfigPath}:null},prompt(){return`Rename ${import_picocolors12.default.cyan("globals")} to ${import_picocolors12.default.cyan("initialGlobals")} in preview.js?`},async run({dryRun,result}){result.previewConfig.removeField(["globals"]),result.previewConfig.setFieldNode(["initialGlobals"],result.globals),dryRun||await(0,import_promises6.writeFile)(result.previewConfigPath,(0,import_csf_tools8.formatConfig)(result.previewConfig))}};var import_common18=require("storybook/internal/common"),removeAddonInteractions={id:"remove-addon-interactions",link:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#essentials-addon-viewport-controls-interactions-and-actions-moved-to-core",async check({mainConfig,packageManager}){let addons=(0,import_common18.getAddonNames)(mainConfig),interactionsAddon="@storybook/addon-interactions",hasInteractionsAddon=addons.some(addon=>addon.includes(interactionsAddon)),hasInteractionsAddonInDeps=packageManager.isDependencyInstalled(interactionsAddon);return!hasInteractionsAddon&&!hasInteractionsAddonInDeps?null:!0},prompt(){return"@storybook/addon-interactions has been moved to Storybook core and will be removed from your configuration."},async run({packageManager,dryRun,configDir}){dryRun||await(0,import_common18.removeAddon)("@storybook/addon-interactions",{configDir,skipInstall:!0,packageManager})}};var import_csf_tools9=require("storybook/internal/csf-tools"),import_picocolors13=__toESM(require_picocolors(),1);init_mainConfigFile();var logger12={log:message=>{process.env.NODE_ENV!=="test"&&console.log(message)}},removeDocsAutodocs={id:"remove-docs-autodocs",link:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#mainjs-docsautodocs-is-deprecated",async check({mainConfigPath}){if(!mainConfigPath)return null;try{let autodocs=(await(0,import_csf_tools9.readConfig)(mainConfigPath)).getSafeFieldValue(["docs","autodocs"]);return autodocs===void 0?null:{autodocs}}catch{return null}},prompt:()=>`${import_picocolors13.default.cyan("docs.autodocs")} has been removed in Storybook 9 and will be removed from your configuration.`,async run({result,dryRun,mainConfigPath,previewConfigPath}){let{autodocs}=result;logger12.log(`\u{1F504} Updating ${import_picocolors13.default.cyan("docs")} parameter in main config file...`),await updateMainConfig({mainConfigPath,dryRun:!!dryRun},async main=>{let docs=main.getFieldValue(["docs"])||{};dryRun||(delete docs.autodocs,Object.keys(docs).length===0?main.removeField(["docs"]):main.setFieldValue(["docs"],docs))}),autodocs===!0&&previewConfigPath&&(logger12.log(`\u{1F504} Updating ${import_picocolors13.default.cyan("tags")} parameter in preview config file...`),await updateMainConfig({mainConfigPath:previewConfigPath,dryRun:!!dryRun},async preview=>{let tags=preview.getFieldValue(["tags"])||[];!tags.includes("autodocs")&&!dryRun&&preview.setFieldValue(["tags"],[...tags,"autodocs"])}))}};var import_common19=require("storybook/internal/common");init_mainConfigFile();function moveEssentialOptions(dryRun,essentialsOptions){return async main=>{let features=main.getFieldValue(["features"])||{};dryRun||main.setFieldValue(["features"],{...features,...essentialsOptions})}}var consolidatedAddons={"@storybook/addon-actions":"storybook/actions","@storybook/addon-controls":"storybook/internal/controls","@storybook/addon-toolbars":"storybook/internal/toolbars","@storybook/addon-highlight":"storybook/highlight","@storybook/addon-measure":"storybook/measure","@storybook/addon-outline":"storybook/outline","@storybook/addon-backgrounds":"storybook/backgrounds","@storybook/addon-viewport":"storybook/viewport"},removeEssentials={id:"remove-essential-addons",link:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#essentials-addon-viewport-controls-interactions-and-actions-moved-to-core",async check({mainConfigPath,mainConfig,packageManager}){if(!mainConfigPath)return null;try{let hasEssentialsAddon=!1,hasDocsAddon=!1,hasDocsDisabled=!1,essentialsOptions,additionalAddonsToRemove=[],CORE_ADDONS=["@storybook/addon-actions","@storybook/addon-backgrounds","@storybook/addon-controls","@storybook/addon-highlight","@storybook/addon-measure","@storybook/addon-outline","@storybook/addon-toolbars","@storybook/addon-viewport"],addonNames=(0,import_common19.getAddonNames)(mainConfig);hasEssentialsAddon=addonNames.includes("@storybook/addon-essentials"),hasDocsAddon=addonNames.includes("@storybook/addon-docs");let allDeps=packageManager.getAllDependencies(),installedAddons=Object.keys(allDeps);for(let addon of CORE_ADDONS)(addonNames.includes(addon)||installedAddons.includes(addon))&&additionalAddonsToRemove.push(addon);if(hasEssentialsAddon){let essentialsEntry=mainConfig.addons?.find(addon=>typeof addon=="string"?addon.includes("@storybook/addon-essentials"):addon.name.includes("@storybook/addon-essentials"));if(typeof essentialsEntry=="object"){let options=essentialsEntry.options||{};hasDocsDisabled=options.docs===!1;let optionsExceptDocs=Object.fromEntries(Object.entries(options).filter(([key])=>key!=="docs"));Object.keys(optionsExceptDocs).length>0&&(essentialsOptions=optionsExceptDocs)}}if(!hasEssentialsAddon&&additionalAddonsToRemove.length===0)return null;let result={hasEssentials:hasEssentialsAddon,hasDocsDisabled,hasDocsAddon,additionalAddonsToRemove,allDeps};return essentialsOptions&&(result.essentialsOptions=essentialsOptions),result}catch{return null}},prompt(){return"In Storybook 9.0, several addons have been moved into Storybook's core and are no longer needed as separate packages. We'll remove the unnecessary addons from your configuration and dependencies, and update your code to use the new core features."},async run({result,dryRun,packageManager,configDir,storybookVersion,storiesPaths,mainConfigPath,previewConfigPath}){let{hasEssentials,hasDocsDisabled,hasDocsAddon,additionalAddonsToRemove,essentialsOptions}=result;if(!(!hasEssentials&&additionalAddonsToRemove.length===0)&&!dryRun){hasEssentials&&await(0,import_common19.removeAddon)("@storybook/addon-essentials",{configDir,packageManager,skipInstall:!0});for(let addon of additionalAddonsToRemove)await(0,import_common19.removeAddon)(addon,{configDir,packageManager,skipInstall:!0});let errors=await(0,import_common19.transformImportFiles)([...storiesPaths,mainConfigPath,previewConfigPath].filter(Boolean),consolidatedAddons,dryRun);if(errors.length>0)throw new Error(`Failed to process ${errors.length} files:
|
|
343
196
|
${errors.map(({file,error})=>`- ${file}: ${error.message}`).join(`
|
|
344
|
-
`)}`);
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
This migration will:
|
|
348
|
-
1. Update your source files to use framework-specific imports
|
|
349
|
-
2. Remove the renderer packages from your package.json
|
|
350
|
-
3. Install the necessary framework dependencies
|
|
351
|
-
Would you like to proceed with these changes?
|
|
352
|
-
|
|
353
|
-
More info: ${import_picocolors20.default.yellow("https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#moving-from-renderer-based-to-framework-based-configuration")}
|
|
354
|
-
`},async run(options){let{result,dryRun=!1}=options,defaultGlob="**/*.{mjs,cjs,js,jsx,ts,tsx}",{glob}=await(0,import_prompts3.default)({type:"text",name:"glob",message:"Enter a custom glob pattern to scan for story files (or press enter to use default):",initial:defaultGlob}),projectRoot=(0,import_common18.getProjectRoot)(),globby=(await import("globby")).globby,didMigrate=!1;for(let selectedFramework of result.frameworks){if(!import_common18.frameworkPackages[selectedFramework]){console.log(`Framework name not found for ${selectedFramework}, skipping.`);continue}let rendererName=import_common18.frameworkToRenderer[import_common18.frameworkPackages[selectedFramework]],[rendererPackage]=Object.entries(import_common18.rendererPackages).find(([,renderer])=>renderer===rendererName)??[];if(!rendererPackage){console.log(`Renderer package not found for ${selectedFramework}, skipping.`);continue}if(rendererPackage===selectedFramework)continue;console.log(`
|
|
355
|
-
Migrating ${rendererPackage} to ${selectedFramework}`);let sourceFiles=await globby([glob],{...(0,import_common18.commonGlobOptions)(""),ignore:["**/node_modules/**"],dot:!0,cwd:projectRoot,absolute:!0});console.log(`Scanning ${sourceFiles.length} files...`),await transformSourceFiles(sourceFiles,rendererPackage,selectedFramework,dryRun),console.log("Updating package.json files..."),await Promise.all(result.packageJsonFiles.map(file=>removeRendererInPackageJson(file,rendererPackage,dryRun))),didMigrate=!0}didMigrate&&!dryRun&&await options.packageManager.installDependencies()}};var import_node_fs2=require("fs"),import_promises6=require("fs/promises"),import_node_path5=require("path"),import_picocolors21=__toESM(require_picocolors(),1),import_ts_dedent17=require("ts-dedent");async function renameInFile(filePath,oldText,newText){try{let updatedContent=(await(0,import_promises6.readFile)(filePath,"utf8")).replaceAll(oldText,newText);await(0,import_promises6.writeFile)(filePath,updatedContent,"utf8")}catch(error){console.error(`Error updating references in ${filePath}:`,error)}}var getDotStorybookReferences=async()=>{try{let{$}=await import("execa"),{stdout}=await $`git grep -l \\.storybook`;return stdout.split(`
|
|
356
|
-
`).filter(Boolean)}catch{return[]}},rnstorybookConfig={id:"rnstorybook-config",versionRange:["<9.0.0","^9.0.0-0 || ^9.0.0"],async check({packageManager,mainConfigPath}){if(!(await packageManager.getAllDependencies())["@storybook/react-native"])return null;let projectDir=mainConfigPath?(0,import_node_path5.join)(mainConfigPath,"..",".."):process.cwd(),storybookDir=(0,import_node_path5.join)(projectDir,".storybook"),rnStorybookDir=(0,import_node_path5.join)(projectDir,".rnstorybook"),{globby}=await import("globby"),requiresFiles=await globby((0,import_node_path5.join)(storybookDir,"storybook.requires.*"));if((0,import_node_fs2.existsSync)(storybookDir)&&requiresFiles.length>0&&!(0,import_node_fs2.existsSync)(rnStorybookDir)){let dotStorybookReferences=await getDotStorybookReferences();return{storybookDir,rnStorybookDir,dotStorybookReferences}}return null},prompt({dotStorybookReferences}){let references=dotStorybookReferences.length>0?import_ts_dedent17.dedent`
|
|
357
|
-
We will update the following files to reference ${import_picocolors21.default.yellow(".rnstorybook")}:
|
|
358
|
-
${dotStorybookReferences.map(ref=>import_picocolors21.default.cyan("- "+ref)).join(`
|
|
359
|
-
`)}
|
|
360
|
-
`.trim():import_ts_dedent17.dedent`
|
|
361
|
-
Oddly, we did not find any source files that reference the ${import_picocolors21.default.yellow(".storybook")} directory.
|
|
362
|
-
If they exist, please update them by hand to reference ${import_picocolors21.default.yellow(".rnstorybook")} instead.
|
|
363
|
-
`.trim();return import_ts_dedent17.dedent`
|
|
364
|
-
In Storybook 9, React Native projects use the ${import_picocolors21.default.yellow(".rnstorybook")} directory for
|
|
365
|
-
configuration instead of ${import_picocolors21.default.yellow(".storybook")}.
|
|
366
|
-
|
|
367
|
-
${references}
|
|
368
|
-
|
|
369
|
-
More info: ${import_picocolors21.default.cyan("https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#react-native-config-dir-renamed")}
|
|
370
|
-
|
|
371
|
-
Would you like to automatically move your config files to the new location?`},async run({result:{storybookDir,rnStorybookDir,dotStorybookReferences},dryRun}){dryRun||(await Promise.all(dotStorybookReferences.map(async ref=>{await renameInFile(ref,".storybook",".rnstorybook")})),await(0,import_promises6.rename)(storybookDir,rnStorybookDir))}};var import_common19=require("storybook/internal/common"),import_picocolors22=__toESM(require_picocolors(),1),import_semver5=require("semver"),import_ts_dedent18=require("ts-dedent");async function getLatestVersions(packageManager,packages){return Promise.all(packages.map(async([packageName])=>({packageName,beforeVersion:await packageManager.getInstalledVersion(packageName).catch(()=>null),afterVersion:await packageManager.latestVersion(packageName).catch(()=>null)})))}var upgradeStorybookRelatedDependencies={id:"upgradeStorybookRelatedDependencies",versionRange:["*.*.*","*.*.*"],promptType:"auto",promptDefaultValue:!1,async check({packageManager,storybookVersion}){let analyzedPackages=await getIncompatibleStorybookPackages({currentStorybookVersion:storybookVersion,packageManager,skipErrors:!0}),allDependencies=await packageManager.getAllDependencies(),storybookDependencies=Object.keys(allDependencies).filter(dep=>dep.includes("storybook")).filter(dep=>!(0,import_common19.isCorePackage)(dep)&&!(0,import_common19.isSatelliteAddon)(dep)),incompatibleDependencies=analyzedPackages.filter(pkg=>pkg.hasIncompatibleDependencies).map(pkg=>pkg.packageName),uniquePackages=Array.from(new Set([...storybookDependencies,...incompatibleDependencies])).map(packageName=>[packageName,allDependencies[packageName]]),upgradablePackages=(await getLatestVersions(packageManager,uniquePackages)).filter(({afterVersion,beforeVersion})=>beforeVersion===null||afterVersion===null?!1:(0,import_semver5.gt)(afterVersion,beforeVersion));return upgradablePackages.length>0?{upgradable:upgradablePackages}:null},prompt({upgradable}){return import_ts_dedent18.dedent`
|
|
372
|
-
You're upgrading Storybook, but you are using community packages that might need to be upgraded as well. We recommend upgrading them:
|
|
373
|
-
${upgradable.map(({packageName,afterVersion,beforeVersion})=>`- ${(0,import_picocolors22.cyan)(packageName)}: ${(0,import_picocolors22.cyan)(beforeVersion)} => ${(0,import_picocolors22.cyan)(afterVersion)}`).join(`
|
|
374
|
-
`)}
|
|
375
|
-
|
|
376
|
-
After upgrading, we will run the dedupe command, which could possibly have effects on dependencies that are not Storybook related.
|
|
377
|
-
see: https://docs.npmjs.com/cli/commands/npm-dedupe
|
|
378
|
-
|
|
379
|
-
Attention: As these packages are maintained by the community, we cannot guarantee that they are compatible with the new version of Storybook. If you encounter any issues, please report them to the package maintainers.
|
|
380
|
-
|
|
381
|
-
Do you want to proceed (upgrade the detected packages)?
|
|
382
|
-
`},async run({result:{upgradable},packageManager,dryRun}){if(dryRun){console.log(import_ts_dedent18.dedent`
|
|
383
|
-
We would have upgrade the following:
|
|
197
|
+
`)}`);essentialsOptions&&updateMainConfig({mainConfigPath,dryRun:!!dryRun},moveEssentialOptions(dryRun,essentialsOptions)),!hasDocsDisabled&&hasEssentials&&await add("@storybook/addon-docs",{configDir,packageManager:packageManager.type,skipInstall:!0,skipPostinstall:!0,yes:!0})}}};var import_promises7=require("fs/promises"),import_common20=require("storybook/internal/common"),import_node_logger15=require("storybook/internal/node-logger"),getAllDependencies=packageJson=>Object.keys({...packageJson.dependencies||{},...packageJson.devDependencies||{}}),detectFrameworks=dependencies=>Object.keys(import_common20.frameworkPackages).filter(pkg=>dependencies.includes(pkg)),detectRenderers=dependencies=>Object.keys(import_common20.rendererPackages).filter(pkg=>dependencies.includes(pkg)).filter(pkg=>!Object.keys(import_common20.frameworkPackages).includes(pkg)),replaceImports=(source,renderer,framework)=>{let regex2=new RegExp(`(['"])${renderer}(['"])`,"g");return regex2.test(source)?source.replace(regex2,`$1${framework}$2`):null},transformSourceFiles=async(files,renderer,framework,dryRun)=>{let errors=[],{default:pLimit3}=await Promise.resolve().then(()=>(init_p_limit2(),p_limit_exports)),limit=pLimit3(10);return await Promise.all(files.map(file=>limit(async()=>{try{let contents=await(0,import_promises7.readFile)(file,"utf-8"),transformed=replaceImports(contents,renderer,framework);!dryRun&&transformed&&await(0,import_promises7.writeFile)(file,transformed)}catch(error){errors.push({file,error})}}))),errors},removeRendererInPackageJson=async(packageJsonPath,renderer,dryRun)=>{try{let content=await(0,import_promises7.readFile)(packageJsonPath,"utf-8"),packageJson=JSON.parse(content),hasChanges=!1;return packageJson.dependencies?.[renderer]&&(delete packageJson.dependencies[renderer],hasChanges=!0),packageJson.devDependencies?.[renderer]&&(delete packageJson.devDependencies[renderer],hasChanges=!0),!dryRun&&hasChanges&&await(0,import_promises7.writeFile)(packageJsonPath,JSON.stringify(packageJson,null,2)),hasChanges}catch(error){throw new Error(`Failed to update package.json: ${error}`)}},checkPackageJson=async packageJsonPath=>{let content=await(0,import_promises7.readFile)(packageJsonPath,"utf-8"),packageJson=JSON.parse(content),dependencies=getAllDependencies(packageJson),frameworks=detectFrameworks(dependencies);if(frameworks.length===0)return null;let renderers=detectRenderers(dependencies);return renderers.length===0?null:{frameworks,renderers}},rendererToFramework={id:"renderer-to-framework",promptType:"auto",link:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#moving-from-renderer-based-to-framework-based-configuration",async check({packageManager}){let validResults=(await Promise.all(packageManager.packageJsonPaths.map(async file=>{try{return await checkPackageJson(file)}catch{return null}}))).filter(r=>r!==null&&r.renderers.length>0);return validResults.length===0?null:{frameworks:[...new Set(validResults.flatMap(r=>r.frameworks))],renderers:[...new Set(validResults.flatMap(r=>r.renderers))],packageJsonFiles:packageManager.packageJsonPaths.filter((_,i)=>validResults[i]!==null)}},prompt(){return"We're moving from renderer-based to framework-based configuration and update your imports and dependencies accordingly."},async run(options){let{result,dryRun=!1,storiesPaths,configDir}=options;for(let selectedFramework of result.frameworks){if(!import_common20.frameworkPackages[selectedFramework]){import_node_logger15.logger.warn(`Framework name not found for ${selectedFramework}, skipping.`);continue}let rendererName=import_common20.frameworkToRenderer[import_common20.frameworkPackages[selectedFramework]],[rendererPackage]=Object.entries(import_common20.rendererPackages).find(([,renderer])=>renderer===rendererName)??[];if(!rendererPackage){import_node_logger15.logger.warn(`Renderer package not found for ${selectedFramework}, skipping.`);continue}if(rendererPackage===selectedFramework)continue;import_node_logger15.logger.debug(`
|
|
198
|
+
Migrating ${rendererPackage} to ${selectedFramework}`);let{globby:globby2}=await Promise.resolve().then(()=>(init_globby(),globby_exports)),configFiles=await globby2([`${configDir}/**/*`]);await transformSourceFiles([...storiesPaths,...configFiles].filter(Boolean),rendererPackage,selectedFramework,dryRun),import_node_logger15.logger.debug("Updating package.json files..."),await Promise.all(result.packageJsonFiles.map(file=>removeRendererInPackageJson(file,rendererPackage,dryRun)))}}};var import_node_fs6=require("fs"),import_promises8=require("fs/promises"),import_node_path8=require("path"),import_ts_dedent12=require("ts-dedent");async function renameInFile(filePath,oldText,newText){try{let updatedContent=(await(0,import_promises8.readFile)(filePath,"utf8")).replaceAll(oldText,newText);await(0,import_promises8.writeFile)(filePath,updatedContent,"utf8")}catch(error){console.error(`Error updating references in ${filePath}:`,error)}}var getDotStorybookReferences=async searchDir=>{try{let{globby:globby2}=await Promise.resolve().then(()=>(init_globby(),globby_exports)),{readFile:readFile7}=await import("fs/promises"),files=await globby2(`${searchDir}/**/*`,{onlyFiles:!0,gitignore:!0}),referencedFiles=[];return await Promise.all(files.map(async file=>{try{(await readFile7(file,"utf8")).includes(".storybook")&&referencedFiles.push(file)}catch{}})),referencedFiles}catch(fsError){return console.warn("Unable to search for .storybook references:",fsError),[]}},rnstorybookConfig={id:"rnstorybook-config",link:"https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#react-native-config-dir-renamed",async check({packageManager,mainConfigPath}){if(!packageManager.getAllDependencies()["@storybook/react-native"])return null;let projectDir=mainConfigPath?(0,import_node_path8.join)(mainConfigPath,"..",".."):process.cwd(),storybookDir=(0,import_node_path8.join)(projectDir,".storybook"),rnStorybookDir=(0,import_node_path8.join)(projectDir,".rnstorybook"),{globby:globby2}=await Promise.resolve().then(()=>(init_globby(),globby_exports)),requiresFiles=await globby2((0,import_node_path8.join)(storybookDir,"storybook.requires.*"));return(0,import_node_fs6.existsSync)(storybookDir)&&requiresFiles.length>0&&!(0,import_node_fs6.existsSync)(rnStorybookDir)?{storybookDir,rnStorybookDir}:null},prompt(){return import_ts_dedent12.dedent`We'll rename your .storybook directory to .rnstorybook and update all references to it.`},async run({result:{storybookDir,rnStorybookDir},dryRun,packageManager}){let instanceDir=packageManager.instanceDir,dotStorybookReferences=await getDotStorybookReferences(instanceDir);dryRun||(await Promise.all(dotStorybookReferences.map(async ref=>{await renameInFile(ref,".storybook",".rnstorybook")})),await(0,import_promises8.rename)(storybookDir,rnStorybookDir))}};var import_node_fs7=require("fs"),import_node_path9=require("path"),import_common21=require("storybook/internal/common"),import_node_logger16=require("storybook/internal/node-logger"),import_semver10=__toESM(require_semver2(),1),import_ts_dedent13=require("ts-dedent");async function getLatestVersions(packageManager,packages){return Promise.all(packages.map(async([packageName])=>({packageName,beforeVersion:await packageManager.getInstalledVersion(packageName),afterVersion:await packageManager.latestVersion(packageName)})))}function isValidVersionType(packageName,specifier){return specifier.startsWith("patch:")||specifier.startsWith("file:")||specifier.startsWith("link:")||specifier.startsWith("portal:")||specifier.startsWith("git:")||specifier.startsWith("git+")||specifier.startsWith("http:")||specifier.startsWith("https:")||specifier.startsWith("workspace:")?(import_node_logger16.logger.debug(`Skipping ${packageName} as it does not have a valid version type: ${specifier}`),!1):!0}var upgradeStorybookRelatedDependencies={id:"upgrade-storybook-related-dependencies",promptType:"auto",promptDefaultValue:!1,async check({packageManager,storybookVersion}){import_node_logger16.logger.debug("Checking for incompatible storybook packages...");let analyzedPackages=await getIncompatibleStorybookPackages({currentStorybookVersion:storybookVersion,packageManager,skipErrors:!0}),allDependencies=packageManager.getAllDependencies(),storybookDependencies=Object.keys(allDependencies).filter(dep=>dep.includes("storybook")).filter(dep=>!(0,import_common21.isCorePackage)(dep)&&!(0,import_common21.isSatelliteAddon)(dep)),incompatibleDependencies=analyzedPackages.filter(pkg=>pkg.hasIncompatibleDependencies).map(pkg=>pkg.packageName),uniquePackages=Array.from(new Set([...storybookDependencies,...incompatibleDependencies].filter(dep=>isValidVersionType(dep,allDependencies[dep])))).map(packageName=>[packageName,allDependencies[packageName]]),upgradablePackages=(await getLatestVersions(packageManager,uniquePackages)).filter(({afterVersion,beforeVersion,packageName})=>beforeVersion===null||afterVersion===null||allDependencies[packageName]===null?!1:(0,import_semver10.gt)(afterVersion,beforeVersion));return upgradablePackages.length>0?{upgradable:upgradablePackages}:null},prompt(){return"We'll upgrade the community packages that are compatible."},async run({result:{upgradable},packageManager,dryRun}){if(dryRun){import_node_logger16.logger.log(import_ts_dedent13.dedent`
|
|
199
|
+
The following would have been upgraded:
|
|
384
200
|
${upgradable.map(({packageName,afterVersion,beforeVersion})=>`${packageName}: ${beforeVersion} => ${afterVersion}`).join(`
|
|
385
201
|
`)}
|
|
386
|
-
`);return}
|
|
387
|
-
We upgraded ${(0,import_picocolors22.yellow)(upgradable.length)} packages:
|
|
388
|
-
${upgradable.map(({packageName,afterVersion,beforeVersion})=>`- ${(0,import_picocolors22.cyan)(packageName)}: ${(0,import_picocolors22.cyan)(beforeVersion)} => ${(0,import_picocolors22.cyan)(afterVersion)}`).join(`
|
|
389
|
-
`)}
|
|
390
|
-
`)}console.log()}};var import_babel5=require("storybook/internal/babel"),import_cli2=require("storybook/internal/cli"),import_csf_tools10=require("storybook/internal/csf-tools"),import_picocolors23=__toESM(require_picocolors(),1),import_ts_dedent19=require("ts-dedent");var wrapRequire={id:"wrap-require",versionRange:["*","*"],async check({packageManager,storybookVersion,mainConfigPath}){let isStorybookInMonorepo=await packageManager.isStorybookInMonorepo(),isPnp=await(0,import_cli2.detectPnp)();if(!mainConfigPath)return null;let config=await(0,import_csf_tools10.readConfig)(mainConfigPath);if(!isStorybookInMonorepo&&!isPnp||!getFieldsForRequireWrapper(config).some(node=>isRequireWrapperNecessary(node)))return null;let isConfigTypescript=mainConfigPath.endsWith(".ts")||mainConfigPath.endsWith(".tsx");return{storybookVersion,isStorybookInMonorepo,isPnp,isConfigTypescript}},prompt({storybookVersion,isStorybookInMonorepo}){let sbFormatted=import_picocolors23.default.cyan(`Storybook ${storybookVersion}`);return import_ts_dedent19.dedent`We have detected that you're using ${sbFormatted} in a ${isStorybookInMonorepo?"monorepo":"PnP"} project.
|
|
391
|
-
For Storybook to work correctly, some fields in your main config must be updated. We can do this for you automatically.
|
|
392
|
-
|
|
393
|
-
More info: https://storybook.js.org/docs/faq#how-do-i-fix-module-resolution-in-special-environments`},async run({dryRun,mainConfigPath,result}){await updateMainConfig({dryRun:!!dryRun,mainConfigPath},mainConfig=>{if(getFieldsForRequireWrapper(mainConfig).forEach(node=>{wrapValueWithRequireWrapper(mainConfig,node)}),getRequireWrapperName(mainConfig)===null){if(mainConfig?.fileName?.endsWith(".cjs")||mainConfig?.fileName?.endsWith(".cts")||mainConfig?.fileName?.endsWith(".cjsx")||mainConfig?.fileName?.endsWith(".ctsx"))mainConfig.setRequireImport(["dirname","join"],"node:path");else if(mainConfig.setImport(["dirname","join"],"node:path"),mainConfig.setImport(["createRequire"],"node:module"),!mainConfig.getBodyDeclarations().some(node=>doesVariableOrFunctionDeclarationExist(node,"require"))){let body=mainConfig._ast.program.body,lastImportIndex=body.findLastIndex(node=>import_babel5.types.isImportDeclaration(node)),requireDeclaration=import_babel5.types.variableDeclaration("const",[import_babel5.types.variableDeclarator(import_babel5.types.identifier("require"),import_babel5.types.callExpression(import_babel5.types.identifier("createRequire"),[import_babel5.types.identifier("import.meta.url")]))]);body.splice(lastImportIndex+1,0,requireDeclaration)}mainConfig.setBodyDeclaration(getRequireWrapperAsCallExpression(result.isConfigTypescript))}})}};var allFixes=[eslintPlugin,wrapRequire,addonMdxGfmRemove,addonStorysourceCodePanel,upgradeStorybookRelatedDependencies,initialGlobals,addonA11yAddonTest,consolidatedImports,addonExperimentalTest,rnstorybookConfig,removeAddonInteractions,rendererToFramework,removeEssentials,addonA11yParameters,removeDocsAutodocs];var commandFixes=[csfFactories];var import_picocolors24=__toESM(require_picocolors(),1),import_ts_dedent20=require("ts-dedent");var messageDivider2=`
|
|
202
|
+
`);return}upgradable.length>0&&packageManager.packageJsonPaths.forEach(packageJsonPath=>{let packageJson=JSON.parse((0,import_node_fs7.readFileSync)(packageJsonPath,"utf-8"));upgradable.forEach(item=>{if(!item)return;let{packageName,afterVersion:version2}=item,prefixed=`^${version2}`;packageJson.dependencies?.[packageName]&&(packageJson.dependencies[packageName]=prefixed),packageJson.devDependencies?.[packageName]&&(packageJson.devDependencies[packageName]=prefixed),packageJson.peerDependencies?.[packageName]&&(packageJson.peerDependencies[packageName]=prefixed)}),packageManager.writePackageJson(packageJson,(0,import_node_path9.dirname)(packageJsonPath))})}};var import_babel6=require("storybook/internal/babel"),import_cli2=require("storybook/internal/cli"),import_csf_tools10=require("storybook/internal/csf-tools"),import_ts_dedent14=require("ts-dedent");init_mainConfigFile();var wrapRequire={id:"wrap-require",link:"https://storybook.js.org/docs/faq#how-do-i-fix-module-resolution-in-special-environments",async check({packageManager,storybookVersion,mainConfigPath}){let isStorybookInMonorepo=packageManager.isStorybookInMonorepo(),isPnp=await(0,import_cli2.detectPnp)();if(!mainConfigPath)return null;let config=await(0,import_csf_tools10.readConfig)(mainConfigPath);if(!isStorybookInMonorepo&&!isPnp||!getFieldsForRequireWrapper(config).some(node=>isRequireWrapperNecessary(node)))return null;let isConfigTypescript=mainConfigPath.endsWith(".ts")||mainConfigPath.endsWith(".tsx");return{storybookVersion,isStorybookInMonorepo,isPnp,isConfigTypescript}},prompt(){return import_ts_dedent14.dedent`We have detected that you're using Storybook in a monorepo or PnP project. Some fields in your main config must be updated.`},async run({dryRun,mainConfigPath,result}){await updateMainConfig({dryRun:!!dryRun,mainConfigPath},mainConfig=>{if(getFieldsForRequireWrapper(mainConfig).forEach(node=>{wrapValueWithRequireWrapper(mainConfig,node)}),getRequireWrapperName(mainConfig)===null){if(mainConfig?.fileName?.endsWith(".cjs")||mainConfig?.fileName?.endsWith(".cts")||mainConfig?.fileName?.endsWith(".cjsx")||mainConfig?.fileName?.endsWith(".ctsx")||mainConfig._code.includes("module.exports"))mainConfig.setRequireImport(["dirname","join"],"node:path");else if(mainConfig.setImport(["dirname","join"],"node:path"),mainConfig.setImport(["createRequire"],"node:module"),!mainConfig.getBodyDeclarations().some(node=>doesVariableOrFunctionDeclarationExist(node,"require"))){let body=mainConfig._ast.program.body,lastImportIndex=body.findLastIndex(node=>import_babel6.types.isImportDeclaration(node)),requireDeclaration=import_babel6.types.variableDeclaration("const",[import_babel6.types.variableDeclarator(import_babel6.types.identifier("require"),import_babel6.types.callExpression(import_babel6.types.identifier("createRequire"),[import_babel6.types.identifier("import.meta.url")]))]);body.splice(lastImportIndex+1,0,requireDeclaration)}mainConfig.setBodyDeclaration(getRequireWrapperAsCallExpression(result.isConfigTypescript))}})}};var allFixes=[eslintPlugin,addonMdxGfmRemove,addonStorysourceCodePanel,upgradeStorybookRelatedDependencies,initialGlobals,addonA11yAddonTest,consolidatedImports,addonExperimentalTest,rnstorybookConfig,removeAddonInteractions,rendererToFramework,removeEssentials,addonA11yParameters,removeDocsAutodocs,wrapRequire];var commandFixes=[csfFactories];var import_node_logger17=require("storybook/internal/node-logger"),import_picocolors14=__toESM(require_picocolors(),1),import_ts_dedent15=require("ts-dedent");var messageDivider2=`
|
|
394
203
|
|
|
395
204
|
`,segmentDivider=`
|
|
396
205
|
|
|
397
206
|
\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
|
|
398
207
|
|
|
399
|
-
`;function getGlossaryMessages(fixSummary,fixResults
|
|
208
|
+
`;function getGlossaryMessages(fixSummary,fixResults){let messages=[];return fixSummary.succeeded.length>0&&(messages.push(import_picocolors14.default.bold("Successful migrations:")),messages.push(fixSummary.succeeded.map(m=>import_picocolors14.default.green(m)).join(", "))),Object.keys(fixSummary.failed).length>0&&(messages.push(import_picocolors14.default.bold("Failed migrations:")),messages.push(Object.entries(fixSummary.failed).map(([id,error])=>`${import_picocolors14.default.bold(import_picocolors14.default.red(id))}:
|
|
400
209
|
${error}`).join(`
|
|
401
|
-
`))
|
|
210
|
+
`))),fixSummary.manual.length>0&&(messages.push(import_picocolors14.default.bold("Manual migrations:")),messages.push(fixSummary.manual.map(m=>fixResults[m]==="manual_succeeded"?import_picocolors14.default.green(m):import_picocolors14.default.blue(m)).join(", "))),fixSummary.skipped.length>0&&(messages.push(import_picocolors14.default.bold("Skipped migrations:")),messages.push(fixSummary.skipped.map(m=>import_picocolors14.default.cyan(m)).join(", "))),messages}function logMigrationSummary({fixResults,fixSummary}){let messages=[];messages.push(getGlossaryMessages(fixSummary,fixResults).join(messageDivider2)),messages.push(import_ts_dedent15.dedent`If you'd like to run the migrations again, you can do so by running '${import_picocolors14.default.cyan("npx storybook automigrate")}'
|
|
402
211
|
|
|
403
212
|
The automigrations try to migrate common patterns in your project, but might not contain everything needed to migrate to the latest version of Storybook.
|
|
404
213
|
|
|
405
|
-
Please check the changelog and migration guide for manual migrations and more information: ${
|
|
406
|
-
And reach out on Discord if you need help: ${
|
|
407
|
-
`);let hasNoFixes=Object.values(fixResults).every(r=>r==="unnecessary"),hasFailures=Object.values(fixResults).some(r=>r==="failed"||r==="check_failed"),title=hasNoFixes?"No migrations were applicable to your project":hasFailures?"Migration check ran with failures":"Migration check ran successfully";return
|
|
408
|
-
`);
|
|
214
|
+
Please check the changelog and migration guide for manual migrations and more information: ${import_picocolors14.default.yellow("https://storybook.js.org/docs/migration-guide")}
|
|
215
|
+
And reach out on Discord if you need help: ${import_picocolors14.default.yellow("https://discord.gg/storybook")}
|
|
216
|
+
`);let hasNoFixes=Object.values(fixResults).every(r=>r==="unnecessary"),hasFailures=Object.values(fixResults).some(r=>r==="failed"||r==="check_failed"),title=hasNoFixes?"No migrations were applicable to your project":hasFailures?"Migration check ran with failures":"Migration check ran successfully";return import_node_logger17.logger.logBox(messages.filter(Boolean).join(segmentDivider),{title,borderColor:hasFailures?"red":"green"})}init_mainConfigFile();var logAvailableMigrations=()=>{let availableFixes=[...allFixes,...commandFixes].map(f=>import_picocolors15.default.yellow(f.id)).map(x=>`- ${x}`).join(`
|
|
217
|
+
`);import_node_logger18.logger.log(import_ts_dedent16.dedent`
|
|
409
218
|
The following migrations are available:
|
|
410
219
|
${availableFixes}
|
|
411
|
-
`)},doAutomigrate=async options=>{
|
|
412
|
-
${error.stack}`),fixSummary.failed[f.id]=error.message),fixResults[f.id]="check_failed"}if(result){let promptType=typeof f.promptType=="function"?await f.promptType(result):f.promptType??"auto";
|
|
413
|
-
\u{1F50E} found a '${import_picocolors25.default.cyan(f.id)}' migration:`);let message=f.prompt(result),getTitle=()=>{switch(promptType){case"auto":return"Automigration detected";case"manual":return"Manual migration detected";case"notification":return"Migration notification"}};logger10.info(boxen(message,{borderStyle:"round",padding:1,borderColor:"#F1618C",title:getTitle()}));let runAnswer;try{if(dryRun)runAnswer={fix:!1};else if(yes)runAnswer={fix:!0},promptType==="manual"&&(fixResults[f.id]="manual_succeeded",fixSummary.manual.push(f.id));else if(promptType==="manual"){fixResults[f.id]="manual_succeeded",fixSummary.manual.push(f.id),logger10.info();let{shouldContinue}=await(0,import_prompts4.default)({type:"toggle",name:"shouldContinue",message:"Select continue once you have made the required changes, or quit to exit the migration process",initial:!0,active:"continue",inactive:"quit"},{onCancel:()=>{throw new Error}});if(!shouldContinue){fixResults[f.id]="manual_skipped";break}}else promptType==="auto"?runAnswer=await(0,import_prompts4.default)({type:"confirm",name:"fix",message:`Do you want to run the '${import_picocolors25.default.cyan(f.id)}' migration on your project?`,initial:f.promptDefaultValue??!0},{onCancel:()=>{throw new Error}}):promptType==="notification"&&(runAnswer=await(0,import_prompts4.default)({type:"confirm",name:"fix",message:"Do you want to continue?",initial:!0},{onCancel:()=>{throw new Error}}))}catch{break}if(promptType==="auto")if((0,import_tiny_invariant.default)(runAnswer,"runAnswer must be defined if not promptOnly"),runAnswer.fix)try{(0,import_tiny_invariant.default)(typeof f.run=="function","run method should be available in fix."),(0,import_tiny_invariant.default)(mainConfigPath,"Main config path should be defined to run migration."),await f.run({result,packageManager,dryRun,mainConfigPath,configDir,previewConfigPath,packageJson,mainConfig,skipInstall,storybookVersion}),logger10.info(`\u2705 ran ${import_picocolors25.default.cyan(f.id)} migration`),fixResults[f.id]="succeeded",fixSummary.succeeded.push(f.id)}catch(error){fixResults[f.id]="failed",fixSummary.failed[f.id]=error instanceof Error?error.message:"Failed to run migration",logger10.info(`\u274C error when running ${import_picocolors25.default.cyan(f.id)} migration`),logger10.info(error),logger10.info()}else fixResults[f.id]="skipped",fixSummary.skipped.push(f.id)}else fixResults[f.id]=fixResults[f.id]||"unnecessary"}return{fixResults,fixSummary}}var import_promises8=require("fs/promises"),import_node_path7=require("path"),import_node_logger=require("storybook/internal/node-logger"),import_cross_spawn=require("cross-spawn"),import_picocolors26=__toESM(require_picocolors(),1),exec2=async(command2,options={},{startMessage,errorMessage,dryRun}={})=>{if(startMessage&&import_node_logger.logger.info(startMessage),dryRun){import_node_logger.logger.info(`
|
|
220
|
+
`)},doAutomigrate=async options=>{import_node_logger18.logger.debug("Extracting storybook data...");let{mainConfig,mainConfigPath,previewConfigPath,storybookVersion,configDir,packageManager,storiesPaths}=await getStorybookData({configDir:options.configDir,packageManagerName:options.packageManager});if(!storybookVersion)throw new Error("Could not determine Storybook version");if(!mainConfigPath)throw new Error("Could not determine main config path");let outcome=await automigrate({...options,packageManager,storybookVersion,beforeVersion:storybookVersion,mainConfigPath,mainConfig,previewConfigPath,configDir,isUpgrade:!1,isLatest:!1,storiesPaths});Object.values(outcome?.fixResults??{}).some(r=>r==="succeeded"||r==="manual_succeeded")&&packageManager.installDependencies(),outcome&&!options.skipDoctor&&await doctor({configDir,packageManager:options.packageManager})},automigrate=async({fixId,fixes:inputFixes,dryRun,yes,packageManager,list,configDir,mainConfig,mainConfigPath,previewConfigPath,storybookVersion,beforeVersion,renderer:rendererPackage,skipInstall,hideMigrationSummary=!1,isUpgrade,isLatest,storiesPaths})=>{if(list)return logAvailableMigrations(),null;let commandFix=commandFixes.find(f=>f.id===fixId);if(commandFix)return import_node_logger18.logger.log(`\u{1F50E} Running migration ${import_picocolors15.default.magenta(fixId)}..`),await commandFix.run({mainConfigPath,previewConfigPath,packageManager,configDir,dryRun,mainConfig,result:null,storybookVersion,storiesPaths}),null;let selectedFixes=inputFixes||allFixes.filter(fix=>!(fix.id===upgradeStorybookRelatedDependencies.id&&isLatest===!1&&fixId!==upgradeStorybookRelatedDependencies.id)),fixes=fixId?selectedFixes.filter(f=>f.id===fixId):selectedFixes;if(fixId&&fixes.length===0)return import_node_logger18.logger.log(`\u{1F4ED} No migrations found for ${import_picocolors15.default.magenta(fixId)}.`),logAvailableMigrations(),null;import_node_logger18.logger.log("\u{1F50E} checking possible migrations..");let{fixResults,fixSummary,preCheckFailure}=await runFixes({fixes,packageManager,rendererPackage,skipInstall,configDir,previewConfigPath,mainConfig,mainConfigPath,storybookVersion,beforeVersion,isUpgrade:!!isUpgrade,dryRun,yes,storiesPaths});return Object.values(fixResults).some(r=>r==="failed"||r==="check_failed")&&import_node_logger18.logTracker.enableLogWriting(),hideMigrationSummary||(import_node_logger18.logger.log(""),logMigrationSummary({fixResults,fixSummary}),import_node_logger18.logger.log("")),{fixResults,preCheckFailure}};async function runFixes({fixes,dryRun,yes,rendererPackage,skipInstall,configDir,packageManager,mainConfig,mainConfigPath,previewConfigPath,storybookVersion,storiesPaths}){let fixResults={},fixSummary={succeeded:[],failed:{},manual:[],skipped:[]};for(let i=0;i<fixes.length;i+=1){let f=fixes[i],result;try{import_node_logger18.logger.debug(`Running ${import_picocolors15.default.cyan(f.id)} migration checks`),result=await f.check({packageManager,configDir,rendererPackage,mainConfig,storybookVersion,previewConfigPath,mainConfigPath,storiesPaths}),import_node_logger18.logger.debug(`End of ${import_picocolors15.default.cyan(f.id)} migration checks`)}catch(error){import_node_logger18.logger.warn(`\u26A0\uFE0F failed to check fix ${import_picocolors15.default.bold(f.id)}`),error instanceof Error&&(import_node_logger18.logger.error(`
|
|
221
|
+
${error.stack}`),fixSummary.failed[f.id]=error.message),fixResults[f.id]="check_failed"}if(result){let promptType=typeof f.promptType=="function"?await f.promptType(result):f.promptType??"auto";import_node_logger18.logger.log(`\u{1F50E} found a '${import_picocolors15.default.cyan(f.id)}' migration:`);let getTitle=()=>{switch(promptType){case"auto":return"Automigration detected";case"manual":return"Manual migration detected";case"notification":return"Migration notification"}},currentTaskLogger=import_node_logger18.prompt.taskLog({id:`automigrate-task-${f.id}`,title:`${getTitle()}: ${import_picocolors15.default.cyan(f.id)}`});import_node_logger18.logger.logBox(f.prompt());let runAnswer;try{if(dryRun)runAnswer={fix:!1};else if(yes)runAnswer={fix:!0},promptType==="manual"&&(fixResults[f.id]="manual_succeeded",fixSummary.manual.push(f.id));else if(promptType==="manual"){if(fixResults[f.id]="manual_succeeded",fixSummary.manual.push(f.id),import_node_logger18.logger.log(""),!await import_node_logger18.prompt.confirm({message:"Select continue once you have made the required changes, or quit to exit the migration process",initialValue:!0,active:"continue",inactive:"quit"},{onCancel:()=>{throw new Error}})){fixResults[f.id]="manual_skipped";break}}else promptType==="auto"?runAnswer={fix:await import_node_logger18.prompt.confirm({message:`Do you want to run the '${import_picocolors15.default.cyan(f.id)}' migration on your project?`,initialValue:f.promptDefaultValue??!0},{onCancel:()=>{throw new Error}})}:promptType==="notification"&&(runAnswer={fix:await import_node_logger18.prompt.confirm({message:"Do you want to continue?"},{onCancel:()=>{throw new Error}})})}catch{break}if(promptType==="auto")if(invariant(runAnswer,"runAnswer must be defined if not promptOnly"),runAnswer.fix)try{invariant(typeof f.run=="function","run method should be available in fix."),invariant(mainConfigPath,"Main config path should be defined to run migration."),await f.run({result,packageManager,dryRun,mainConfigPath,configDir,previewConfigPath,mainConfig,skipInstall,storybookVersion,storiesPaths}),import_node_logger18.logger.log(`\u2705 ran ${import_picocolors15.default.cyan(f.id)} migration`),fixResults[f.id]="succeeded",fixSummary.succeeded.push(f.id),currentTaskLogger.success(`Ran ${import_picocolors15.default.cyan(f.id)} migration`)}catch(error){fixResults[f.id]="failed";let errorMessage=error instanceof Error?error.message:"Failed to run migration";fixSummary.failed[f.id]=errorMessage,currentTaskLogger.error(`Error when running ${import_picocolors15.default.cyan(f.id)} migration`)}else fixResults[f.id]="skipped",fixSummary.skipped.push(f.id),currentTaskLogger.success(`Skipped ${import_picocolors15.default.cyan(f.id)} migration`)}else fixResults[f.id]=fixResults[f.id]||"unnecessary"}return{fixResults,fixSummary}}var import_promises9=require("fs/promises"),import_node_path10=require("path"),import_node_logger19=require("storybook/internal/node-logger"),import_cross_spawn=__toESM(require_cross_spawn(),1),import_picocolors16=__toESM(require_picocolors(),1),exec=async(command2,options={},{startMessage,errorMessage,dryRun}={})=>{if(startMessage&&import_node_logger19.logger.info(startMessage),dryRun){import_node_logger19.logger.info(`
|
|
414
222
|
> ${command2}
|
|
415
|
-
`);return}return
|
|
223
|
+
`);return}return import_node_logger19.logger.info(command2),new Promise((resolve,reject)=>{let child=(0,import_cross_spawn.spawn)(command2,{...options,shell:!0,stdio:"pipe"});child.stderr.pipe(process.stdout),child.stdout.pipe(process.stdout),child.on("exit",code=>{code===0?resolve(void 0):(import_node_logger19.logger.error(import_picocolors16.default.red(`An error occurred while executing: \`${command2}\``)),errorMessage&&import_node_logger19.logger.info(errorMessage),reject(new Error(`command exited with code: ${code}: `)))})})},link=async({target,local,start})=>{let storybookDir=process.cwd();try{if(JSON.parse(await(0,import_promises9.readFile)("package.json",{encoding:"utf8"})).name!=="@storybook/root")throw new Error}catch{throw new Error("Expected to run link from the root of the storybook monorepo")}let reproDir=target,reproName=(0,import_node_path10.basename)(target);if(!local){let reprosDir=(0,import_node_path10.join)(storybookDir,"../storybook-repros");import_node_logger19.logger.info(`Ensuring directory ${reprosDir}`),await(0,import_promises9.mkdir)(reprosDir,{recursive:!0}),import_node_logger19.logger.info(`Cloning ${target}`),await exec(`git clone ${target}`,{cwd:reprosDir}),reproName=(0,import_node_path10.basename)(target,(0,import_node_path10.extname)(target)),reproDir=(0,import_node_path10.join)(reprosDir,reproName)}let version2=(0,import_cross_spawn.sync)("yarn",["--version"],{cwd:reproDir,stdio:"pipe",shell:!0}).stdout.toString();if(!/^[2-4]\./.test(version2)){import_node_logger19.logger.warn(`\u{1F6A8} Expected yarn 2 or higher in ${reproDir}!`),import_node_logger19.logger.warn(""),import_node_logger19.logger.warn("Please set it up with `yarn set version berry`,"),import_node_logger19.logger.warn(`then link '${reproDir}' with the '--local' flag.`);return}import_node_logger19.logger.info(`Linking ${reproDir}`),await exec(`yarn link --all --relative ${storybookDir}`,{cwd:reproDir}),import_node_logger19.logger.info(`Installing ${reproName}`);let reproPackageJson=JSON.parse(await(0,import_promises9.readFile)((0,import_node_path10.join)(reproDir,"package.json"),{encoding:"utf8"}));reproPackageJson.devDependencies?.vite||(reproPackageJson.devDependencies={...reproPackageJson.devDependencies,"webpack-hot-middleware":"*"}),reproPackageJson.devDependencies={...reproPackageJson.devDependencies,"@types/node":"^22"},await(0,import_promises9.writeFile)((0,import_node_path10.join)(reproDir,"package.json"),JSON.stringify(reproPackageJson,null,2)),await exec("yarn install",{cwd:reproDir}),start&&(import_node_logger19.logger.info(`Running ${reproName} storybook`),await exec("yarn run storybook",{cwd:reproDir}))};var import_node_logger20=require("storybook/internal/node-logger"),import_codemod2=require("@storybook/codemod");async function migrate(migration,{glob,dryRun,list,rename:rename2,parser}){if(list)(0,import_codemod2.listCodemods)().forEach(key=>import_node_logger20.logger.log(key));else if(migration)await(0,import_codemod2.runCodemod)(migration,{glob,dryRun,logger:import_node_logger20.logger,rename:rename2,parser});else throw new Error("Migrate: please specify a migration name or --list")}var import_node_fs8=require("fs"),import_promises10=require("fs/promises"),import_node_path11=require("path"),import_common22=require("storybook/internal/common"),import_node_logger21=require("storybook/internal/node-logger"),import_giget=require("giget"),import_picocolors17=__toESM(require_picocolors(),1),import_semver11=__toESM(require_semver2(),1);var import_ts_dedent17=require("ts-dedent");var baseTemplates={"cra/default-js":{name:"Create React App Latest (Webpack | JavaScript)",script:`
|
|
416
224
|
npx create-react-app {{beforeDir}} && cd {{beforeDir}} && jq '.browserslist.production[0] = ">0.9%"' package.json > tmp.json && mv tmp.json package.json
|
|
417
225
|
`,expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"},skipTasks:["e2e-tests-dev","bench","vitest-integration"],modifications:{useCsfFactory:!0,extraDependencies:["prop-types"],mainConfig:config=>({stories:config.getFieldValue(["stories"])?.map(s=>typeof s=="string"?s.replace(/\|(tsx?|ts)\b|\b(tsx?|ts)\|/g,""):s)})}},"cra/default-ts":{name:"Create React App Latest (Webpack | TypeScript)",script:`
|
|
418
226
|
npx create-react-app {{beforeDir}} --template typescript && cd {{beforeDir}} && jq '.browserslist.production[0] = ">0.9%"' package.json > tmp.json && mv tmp.json package.json
|
|
@@ -420,64 +228,67 @@ ${error.stack}`),fixSummary.failed[f.id]=error.message),fixResults[f.id]="check_
|
|
|
420
228
|
npm create vite --yes {{beforeDir}} -- --template react-ts && cd {{beforeDir}} && yarn add react@beta react-dom@beta && jq '.resolutions += {"@types/react": "npm:types-react@beta", "@types/react-dom": "npm:types-react-dom@beta"}' package.json > tmp.json && mv tmp.json package.json && yarn add --dev @types/react@npm:types-react@beta @types/react-dom@npm:types-react-dom@beta
|
|
421
229
|
`,expected:{framework:"@storybook/react-vite",renderer:"@storybook/react",builder:"@storybook/builder-vite"},modifications:{useCsfFactory:!0,extraDependencies:["prop-types"],mainConfig:{features:{developmentModeForBuild:!0}}},skipTasks:["e2e-tests-dev","bench"]},"react-webpack/18-ts":{name:"React Latest (Webpack | TypeScript)",script:"yarn create webpack5-react {{beforeDir}}",expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"},modifications:{useCsfFactory:!0,extraDependencies:["prop-types"]},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"react-webpack/17-ts":{name:"React v17 (Webpack | TypeScript)",script:'yarn create webpack5-react {{beforeDir}} --version-react="17" --version-react-dom="17"',expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"},modifications:{useCsfFactory:!0,extraDependencies:["prop-types"]},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"react-webpack/prerelease-ts":{name:"React Prerelease (Webpack | TypeScript)",script:`
|
|
422
230
|
yarn create webpack5-react {{beforeDir}} --version-react="beta" --version-react-dom="beta" && cd {{beforeDir}} && jq '.resolutions += {"@types/react": "npm:types-react@beta", "@types/react-dom": "npm:types-react-dom@beta"}' package.json > tmp.json && mv tmp.json package.json && yarn add --dev @types/react@npm:types-react@beta @types/react-dom@npm:types-react-dom@beta
|
|
423
|
-
`,expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"},modifications:{useCsfFactory:!0,extraDependencies:["prop-types"]},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"solid-vite/default-js":{name:"SolidJS Latest (Vite | JavaScript)",script:"npx degit solidjs/templates/js {{beforeDir}}",expected:{framework:"storybook-solidjs-vite",renderer:"storybook-solidjs",builder:"@storybook/builder-vite"},inDevelopment:!0,skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"solid-vite/default-ts":{name:"SolidJS Latest (Vite | TypeScript)",script:"npx degit solidjs/templates/ts {{beforeDir}}",expected:{framework:"storybook-solidjs-vite",renderer:"storybook-solidjs",builder:"@storybook/builder-vite"},inDevelopment:!0,skipTasks:["e2e-tests-dev","bench"]},"vue3-vite/default-js":{name:"Vue v3 (Vite | JavaScript)",script:"npm create vite --yes {{beforeDir}} -- --template vue",expected:{framework:"@storybook/vue3-vite",renderer:"@storybook/vue3",builder:"@storybook/builder-vite"},skipTasks:["e2e-tests-dev","bench"]},"vue3-vite/default-ts":{name:"Vue v3 (Vite | TypeScript)",script:"npm create vite --yes {{beforeDir}} -- --template vue-ts",expected:{framework:"@storybook/vue3-vite",renderer:"@storybook/vue3",builder:"@storybook/builder-vite"},skipTasks:["e2e-tests-dev","bench"]},"nuxt-vite/default-ts":{name:"Nuxt v3 (Vite | TypeScript)",script:"npx nuxi init --packageManager yarn --gitInit false -M @nuxt/ui {{beforeDir}}",expected:{framework:"@storybook-vue/nuxt",renderer:"@storybook/vue3",builder:"@storybook/builder-vite"},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"html-vite/default-js":{name:"HTML Latest (Vite | JavaScript)",script:'npm create vite --yes {{beforeDir}} -- --template vanilla && cd {{beforeDir}} && echo "export default {}" > vite.config.js',expected:{framework:"@storybook/html-vite",renderer:"@storybook/html",builder:"@storybook/builder-vite"},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"html-vite/default-ts":{name:"HTML Latest (Vite | TypeScript)",script:'npm create vite --yes {{beforeDir}} -- --template vanilla-ts && cd {{beforeDir}} && echo "export default {}" > vite.config.js',expected:{framework:"@storybook/html-vite",renderer:"@storybook/html",builder:"@storybook/builder-vite"},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"svelte-vite/default-js":{name:"Svelte Latest (Vite | JavaScript)",script:"npm create vite --yes {{beforeDir}} -- --template svelte",expected:{framework:"@storybook/svelte-vite",renderer:"@storybook/svelte",builder:"@storybook/builder-vite"},skipTasks:["e2e-tests-dev","bench"]},"svelte-vite/default-ts":{name:"Svelte Latest (Vite | TypeScript)",script:"npm create vite --yes {{beforeDir}} -- --template svelte-ts",expected:{framework:"@storybook/svelte-vite",renderer:"@storybook/svelte",builder:"@storybook/builder-vite"},skipTasks:["smoke-test","e2e-tests-dev","bench"]},"angular-cli/prerelease":{name:"Angular CLI Prerelease (Webpack | TypeScript)",script:"npx -p @angular/cli@next ng new angular-v16 --directory {{beforeDir}} --routing=true --minimal=true --style=scss --strict --skip-git --skip-install --package-manager=yarn --ssr",expected:{framework:"@storybook/angular",renderer:"@storybook/angular",builder:"@storybook/builder-webpack5"},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"angular-cli/default-ts":{name:"Angular CLI Latest (Webpack | TypeScript)",script:"npx -p @angular/cli ng new angular-latest --directory {{beforeDir}} --routing=true --minimal=true --style=scss --strict --skip-git --skip-install --package-manager=yarn --ssr",expected:{framework:"@storybook/angular",renderer:"@storybook/angular",builder:"@storybook/builder-webpack5"},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"svelte-kit/skeleton-ts":{name:"SvelteKit Latest (Vite | TypeScript)",script:"npx sv@latest create --template minimal --types ts --no-add-ons --no-install {{beforeDir}}",expected:{framework:"@storybook/sveltekit",renderer:"@storybook/svelte",builder:"@storybook/builder-vite"},skipTasks:["e2e-tests-dev","bench"]},"lit-vite/default-js":{name:"Lit Latest (Vite | JavaScript)",script:'npm create vite --yes {{beforeDir}} -- --template lit && cd {{beforeDir}} && echo "export default {}" > vite.config.js',expected:{framework:"@storybook/web-components-vite",renderer:"@storybook/web-components",builder:"@storybook/builder-vite"},skipTasks:["smoke-test","e2e-tests-dev","bench","vitest-integration"]},"lit-vite/default-ts":{name:"Lit Latest (Vite | TypeScript)",script:'npm create vite --yes {{beforeDir}} -- --template lit-ts && cd {{beforeDir}} && echo "export default {}" > vite.config.js',expected:{framework:"@storybook/web-components-vite",renderer:"@storybook/web-components",builder:"@storybook/builder-vite"},skipTasks:["smoke-test","e2e-tests-dev","bench","vitest-integration"]},"preact-vite/default-js":{name:"Preact Latest (Vite | JavaScript)",script:"npm create vite --yes {{beforeDir}} -- --template preact",expected:{framework:"@storybook/preact-vite",renderer:"@storybook/preact",builder:"@storybook/builder-vite"},modifications:{extraDependencies:["preact-render-to-string"]},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"preact-vite/default-ts":{name:"Preact Latest (Vite | TypeScript)",script:"npm create vite --yes {{beforeDir}} -- --template preact-ts",expected:{framework:"@storybook/preact-vite",renderer:"@storybook/preact",builder:"@storybook/builder-vite"},modifications:{extraDependencies:["preact-render-to-string"]},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"qwik-vite/default-ts":{name:"Qwik CLI Latest (Vite | TypeScript)",script:"npm create qwik playground {{beforeDir}}",inDevelopment:!0,expected:{framework:"storybook-framework-qwik",renderer:"storybook-framework-qwik",builder:"storybook-framework-qwik"},skipTasks:["e2e-tests","e2e-tests-dev","bench","vitest-integration"]},"ember/3-js":{name:"Ember v3 (Webpack | JavaScript)",script:"npx --package ember-cli@3.28.1 ember new {{beforeDir}}",inDevelopment:!0,expected:{framework:"@storybook/ember",renderer:"@storybook/ember",builder:"@storybook/builder-webpack5"}},"ember/default-js":{name:"Ember v4 (Webpack | JavaScript)",script:"npx --package ember-cli@4.12.1 ember new {{beforeDir}} --yarn && cd {{beforeDir}} && yarn add --dev @storybook/ember-cli-storybook && yarn build",inDevelopment:!0,expected:{framework:"@storybook/ember",renderer:"@storybook/ember",builder:"@storybook/builder-webpack5"}},"react-native-web-vite/expo-ts":{name:"React Native Expo Latest (Vite | TypeScript)",script:"npx create-expo-app -y {{beforeDir}}",expected:{framework:"@storybook/react-native-web-vite",renderer:"@storybook/react",builder:"@storybook/builder-vite"},modifications:{useCsfFactory:!0},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"react-native-web-vite/rn-cli-ts":{name:"React Native CLI Latest (Vite | TypeScript)",script:"npx @react-native-community/cli@latest init --install-pods=false --directory={{beforeDir}} rnapp",expected:{framework:"@storybook/react-native-web-vite",renderer:"@storybook/react",builder:"@storybook/builder-vite"},skipTasks:["e2e-tests-dev","bench","vitest-integration"]}},internalTemplates={"internal/react18-webpack-babel":{name:"React with Babel Latest (Webpack | TypeScript)",script:"yarn create webpack5-react {{beforeDir}}",expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"},modifications:{useCsfFactory:!0,extraDependencies:["@storybook/addon-webpack5-compiler-babel","prop-types"],editAddons:addons=>[...addons,"@storybook/addon-webpack5-compiler-babel"].filter(a=>a!=="@storybook/addon-webpack5-compiler-swc")},isInternal:!0,skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"internal/react16-webpack":{name:"React 16 (Webpack | TypeScript)",script:"yarn create webpack5-react {{beforeDir}} --version-react=16 --version-react-dom=16 --version-@types/react=16 --version-@types/react-dom=16",expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"},modifications:{useCsfFactory:!0,extraDependencies:["prop-types"]},skipTasks:["e2e-tests-dev","bench","vitest-integration"],isInternal:!0},"internal/server-webpack5":{name:"Server Webpack5",script:'yarn init -y && echo "module.exports = {}" > webpack.config.js',expected:{framework:"@storybook/server-webpack5",renderer:"@storybook/server",builder:"@storybook/builder-webpack5"},isInternal:!0,skipTasks:["bench","vitest-integration"]}},benchTemplates={"bench/react-vite-default-ts":{...baseTemplates["react-vite/default-ts"],name:"Bench (react-vite/default-ts)",isInternal:!0,modifications:{skipTemplateStories:!0},skipTasks:["e2e-tests-dev","test-runner","test-runner-dev","e2e-tests","chromatic","vitest-integration"]},"bench/react-webpack-18-ts":{...baseTemplates["react-webpack/18-ts"],name:"Bench (react-webpack/18-ts)",isInternal:!0,modifications:{skipTemplateStories:!0},skipTasks:["e2e-tests-dev","test-runner","test-runner-dev","e2e-tests","chromatic","vitest-integration"]},"bench/react-vite-default-ts-nodocs":{...baseTemplates["react-vite/default-ts"],name:"Bench (react-vite/default-ts, no docs)",isInternal:!0,modifications:{skipTemplateStories:!0,disableDocs:!0},skipTasks:["e2e-tests-dev","test-runner","test-runner-dev","e2e-tests","chromatic","vitest-integration"]},"bench/react-vite-default-ts-test-build":{...baseTemplates["react-vite/default-ts"],name:"Bench (react-vite/default-ts, test-build)",isInternal:!0,modifications:{skipTemplateStories:!0,testBuild:!0},skipTasks:["e2e-tests-dev","test-runner","test-runner-dev","e2e-tests","vitest-integration"]},"bench/react-webpack-18-ts-test-build":{...baseTemplates["react-webpack/18-ts"],name:"Bench (react-webpack/18-ts, test-build)",isInternal:!0,modifications:{skipTemplateStories:!0,testBuild:!0},skipTasks:["e2e-tests-dev","test-runner","test-runner-dev","e2e-tests","vitest-integration"]}},allTemplates={...baseTemplates,...internalTemplates,...benchTemplates},normal=["react-vite/default-ts","angular-cli/default-ts","vue3-vite/default-ts","nuxt-vite/default-ts","lit-vite/default-ts","svelte-vite/default-ts","svelte-kit/skeleton-ts","nextjs/default-ts","nextjs-vite/default-ts","bench/react-vite-default-ts","bench/react-webpack-18-ts","bench/react-vite-default-ts-nodocs","bench/react-vite-default-ts-test-build","bench/react-webpack-18-ts-test-build","ember/default-js"],merged=[...normal,"react-webpack/18-ts","react-webpack/17-ts","preact-vite/default-ts","html-vite/default-ts"],daily=[...merged,"angular-cli/prerelease","react-vite/default-js","react-vite/prerelease-ts","react-webpack/prerelease-ts","vue3-vite/default-js","lit-vite/default-js","svelte-vite/default-js","nextjs/prerelease","qwik-vite/default-ts","preact-vite/default-js","html-vite/default-js","internal/react16-webpack","internal/react18-webpack-babel","react-native-web-vite/expo-ts"];var logger13=console,toChoices=c=>({title:allTemplates[c].name,value:c}),sandbox=async({output:outputDirectory,filterValue,init,...options})=>{let selectedConfig=allTemplates[filterValue],templateId=selectedConfig?filterValue:null,{packageManager:pkgMgr}=options,packageManager=import_common21.JsPackageManagerFactory.getPackageManager({force:pkgMgr}),latestVersion=await packageManager.latestVersion("storybook"),nextVersion=await packageManager.latestVersion("storybook@next").catch(e=>"0.0.0"),currentVersion=import_common22.versions.storybook,isPrerelease=(0,import_semver7.prerelease)(currentVersion),isOutdated=(0,import_semver7.lt)(currentVersion,isPrerelease?nextVersion:latestVersion),borderColor=isOutdated?"#FC521F":"#F1618C",downloadType=!isOutdated&&init?"after-storybook":"before-storybook",branch=isPrerelease?"next":"main",messages={welcome:`Creating a Storybook ${import_picocolors27.default.bold(currentVersion)} sandbox..`,notLatest:import_picocolors27.default.red(import_ts_dedent22.dedent`
|
|
424
|
-
This version is behind the latest release, which is: ${
|
|
231
|
+
`,expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"},modifications:{useCsfFactory:!0,extraDependencies:["prop-types"]},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"solid-vite/default-js":{name:"SolidJS Latest (Vite | JavaScript)",script:"npx degit solidjs/templates/js {{beforeDir}}",expected:{framework:"storybook-solidjs-vite",renderer:"storybook-solidjs",builder:"@storybook/builder-vite"},inDevelopment:!0,skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"solid-vite/default-ts":{name:"SolidJS Latest (Vite | TypeScript)",script:"npx degit solidjs/templates/ts {{beforeDir}}",expected:{framework:"storybook-solidjs-vite",renderer:"storybook-solidjs",builder:"@storybook/builder-vite"},inDevelopment:!0,skipTasks:["e2e-tests-dev","bench"]},"vue3-vite/default-js":{name:"Vue v3 (Vite | JavaScript)",script:"npm create vite --yes {{beforeDir}} -- --template vue",expected:{framework:"@storybook/vue3-vite",renderer:"@storybook/vue3",builder:"@storybook/builder-vite"},skipTasks:["e2e-tests-dev","bench"]},"vue3-vite/default-ts":{name:"Vue v3 (Vite | TypeScript)",script:"npm create vite --yes {{beforeDir}} -- --template vue-ts",expected:{framework:"@storybook/vue3-vite",renderer:"@storybook/vue3",builder:"@storybook/builder-vite"},skipTasks:["e2e-tests-dev","bench"]},"html-vite/default-js":{name:"HTML Latest (Vite | JavaScript)",script:'npm create vite --yes {{beforeDir}} -- --template vanilla && cd {{beforeDir}} && echo "export default {}" > vite.config.js',expected:{framework:"@storybook/html-vite",renderer:"@storybook/html",builder:"@storybook/builder-vite"},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"html-vite/default-ts":{name:"HTML Latest (Vite | TypeScript)",script:'npm create vite --yes {{beforeDir}} -- --template vanilla-ts && cd {{beforeDir}} && echo "export default {}" > vite.config.js',expected:{framework:"@storybook/html-vite",renderer:"@storybook/html",builder:"@storybook/builder-vite"},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"svelte-vite/default-js":{name:"Svelte Latest (Vite | JavaScript)",script:"npm create vite --yes {{beforeDir}} -- --template svelte",expected:{framework:"@storybook/svelte-vite",renderer:"@storybook/svelte",builder:"@storybook/builder-vite"},skipTasks:["e2e-tests-dev","bench"]},"svelte-vite/default-ts":{name:"Svelte Latest (Vite | TypeScript)",script:"npm create vite --yes {{beforeDir}} -- --template svelte-ts",expected:{framework:"@storybook/svelte-vite",renderer:"@storybook/svelte",builder:"@storybook/builder-vite"},skipTasks:["smoke-test","e2e-tests-dev","bench"]},"angular-cli/prerelease":{name:"Angular CLI Prerelease (Webpack | TypeScript)",script:"npx -p @angular/cli@next ng new angular-v16 --directory {{beforeDir}} --routing=true --minimal=true --style=scss --strict --skip-git --skip-install --package-manager=yarn --ssr",expected:{framework:"@storybook/angular",renderer:"@storybook/angular",builder:"@storybook/builder-webpack5"},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"angular-cli/default-ts":{name:"Angular CLI Latest (Webpack | TypeScript)",script:"npx -p @angular/cli ng new angular-latest --directory {{beforeDir}} --routing=true --minimal=true --style=scss --strict --skip-git --skip-install --package-manager=yarn --ssr",expected:{framework:"@storybook/angular",renderer:"@storybook/angular",builder:"@storybook/builder-webpack5"},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"svelte-kit/skeleton-ts":{name:"SvelteKit Latest (Vite | TypeScript)",script:"npx sv@latest create --template minimal --types ts --no-add-ons --no-install {{beforeDir}}",expected:{framework:"@storybook/sveltekit",renderer:"@storybook/svelte",builder:"@storybook/builder-vite"},skipTasks:["e2e-tests-dev","bench"]},"lit-vite/default-js":{name:"Lit Latest (Vite | JavaScript)",script:'npm create vite --yes {{beforeDir}} -- --template lit && cd {{beforeDir}} && echo "export default {}" > vite.config.js',expected:{framework:"@storybook/web-components-vite",renderer:"@storybook/web-components",builder:"@storybook/builder-vite"},skipTasks:["smoke-test","e2e-tests-dev","bench","vitest-integration"]},"lit-vite/default-ts":{name:"Lit Latest (Vite | TypeScript)",script:'npm create vite --yes {{beforeDir}} -- --template lit-ts && cd {{beforeDir}} && echo "export default {}" > vite.config.js',expected:{framework:"@storybook/web-components-vite",renderer:"@storybook/web-components",builder:"@storybook/builder-vite"},skipTasks:["smoke-test","e2e-tests-dev","bench","vitest-integration"]},"preact-vite/default-js":{name:"Preact Latest (Vite | JavaScript)",script:"npm create vite --yes {{beforeDir}} -- --template preact",expected:{framework:"@storybook/preact-vite",renderer:"@storybook/preact",builder:"@storybook/builder-vite"},modifications:{extraDependencies:["preact-render-to-string"]},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"preact-vite/default-ts":{name:"Preact Latest (Vite | TypeScript)",script:"npm create vite --yes {{beforeDir}} -- --template preact-ts",expected:{framework:"@storybook/preact-vite",renderer:"@storybook/preact",builder:"@storybook/builder-vite"},modifications:{extraDependencies:["preact-render-to-string"]},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"qwik-vite/default-ts":{name:"Qwik CLI Latest (Vite | TypeScript)",script:"npm create qwik playground {{beforeDir}}",inDevelopment:!0,expected:{framework:"storybook-framework-qwik",renderer:"storybook-framework-qwik",builder:"storybook-framework-qwik"},skipTasks:["e2e-tests","e2e-tests-dev","bench","vitest-integration"]},"ember/3-js":{name:"Ember v3 (Webpack | JavaScript)",script:"npx --package ember-cli@3.28.1 ember new {{beforeDir}}",inDevelopment:!0,expected:{framework:"@storybook/ember",renderer:"@storybook/ember",builder:"@storybook/builder-webpack5"}},"ember/default-js":{name:"Ember v4 (Webpack | JavaScript)",script:"npx --package ember-cli@4.12.1 ember new {{beforeDir}} --yarn && cd {{beforeDir}} && yarn add --dev @storybook/ember-cli-storybook && yarn build",inDevelopment:!0,expected:{framework:"@storybook/ember",renderer:"@storybook/ember",builder:"@storybook/builder-webpack5"}},"react-native-web-vite/expo-ts":{name:"React Native Expo Latest (Vite | TypeScript)",script:"npx create-expo-app -y {{beforeDir}}",expected:{framework:"@storybook/react-native-web-vite",renderer:"@storybook/react",builder:"@storybook/builder-vite"},modifications:{useCsfFactory:!0},skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"react-native-web-vite/rn-cli-ts":{name:"React Native CLI Latest (Vite | TypeScript)",script:"npx @react-native-community/cli@latest init --install-pods=false --directory={{beforeDir}} rnapp",expected:{framework:"@storybook/react-native-web-vite",renderer:"@storybook/react",builder:"@storybook/builder-vite"},skipTasks:["e2e-tests-dev","bench","vitest-integration"]}},internalTemplates={"internal/react18-webpack-babel":{name:"React with Babel Latest (Webpack | TypeScript)",script:"yarn create webpack5-react {{beforeDir}}",expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"},modifications:{useCsfFactory:!0,extraDependencies:["@storybook/addon-webpack5-compiler-babel","prop-types"],editAddons:addons=>[...addons,"@storybook/addon-webpack5-compiler-babel"].filter(a=>a!=="@storybook/addon-webpack5-compiler-swc")},isInternal:!0,skipTasks:["e2e-tests-dev","bench","vitest-integration"]},"internal/react16-webpack":{name:"React 16 (Webpack | TypeScript)",script:"yarn create webpack5-react {{beforeDir}} --version-react=16 --version-react-dom=16 --version-@types/react=16 --version-@types/react-dom=16",expected:{framework:"@storybook/react-webpack5",renderer:"@storybook/react",builder:"@storybook/builder-webpack5"},modifications:{useCsfFactory:!0,extraDependencies:["prop-types"]},skipTasks:["e2e-tests-dev","bench","vitest-integration"],isInternal:!0},"internal/server-webpack5":{name:"Server Webpack5",script:'yarn init -y && echo "module.exports = {}" > webpack.config.js',expected:{framework:"@storybook/server-webpack5",renderer:"@storybook/server",builder:"@storybook/builder-webpack5"},isInternal:!0,skipTasks:["bench","vitest-integration"]}},benchTemplates={"bench/react-vite-default-ts":{...baseTemplates["react-vite/default-ts"],name:"Bench (react-vite/default-ts)",isInternal:!0,modifications:{skipTemplateStories:!0},skipTasks:["e2e-tests-dev","test-runner","test-runner-dev","e2e-tests","chromatic","vitest-integration"]},"bench/react-webpack-18-ts":{...baseTemplates["react-webpack/18-ts"],name:"Bench (react-webpack/18-ts)",isInternal:!0,modifications:{skipTemplateStories:!0},skipTasks:["e2e-tests-dev","test-runner","test-runner-dev","e2e-tests","chromatic","vitest-integration"]},"bench/react-vite-default-ts-nodocs":{...baseTemplates["react-vite/default-ts"],name:"Bench (react-vite/default-ts, no docs)",isInternal:!0,modifications:{skipTemplateStories:!0,disableDocs:!0},skipTasks:["e2e-tests-dev","test-runner","test-runner-dev","e2e-tests","chromatic","vitest-integration"]},"bench/react-vite-default-ts-test-build":{...baseTemplates["react-vite/default-ts"],name:"Bench (react-vite/default-ts, test-build)",isInternal:!0,modifications:{skipTemplateStories:!0,testBuild:!0},skipTasks:["e2e-tests-dev","test-runner","test-runner-dev","e2e-tests","vitest-integration"]},"bench/react-webpack-18-ts-test-build":{...baseTemplates["react-webpack/18-ts"],name:"Bench (react-webpack/18-ts, test-build)",isInternal:!0,modifications:{skipTemplateStories:!0,testBuild:!0},skipTasks:["e2e-tests-dev","test-runner","test-runner-dev","e2e-tests","vitest-integration"]}},allTemplates={...baseTemplates,...internalTemplates,...benchTemplates},normal=["react-vite/default-ts","angular-cli/default-ts","vue3-vite/default-ts","lit-vite/default-ts","svelte-vite/default-ts","svelte-kit/skeleton-ts","nextjs/default-ts","nextjs-vite/default-ts","bench/react-vite-default-ts","bench/react-webpack-18-ts","bench/react-vite-default-ts-nodocs","bench/react-vite-default-ts-test-build","bench/react-webpack-18-ts-test-build","ember/default-js"],merged=[...normal,"react-webpack/18-ts","react-webpack/17-ts","preact-vite/default-ts","html-vite/default-ts"],daily=[...merged,"angular-cli/prerelease","react-vite/default-js","react-vite/prerelease-ts","react-webpack/prerelease-ts","vue3-vite/default-js","lit-vite/default-js","svelte-vite/default-js","nextjs/prerelease","qwik-vite/default-ts","preact-vite/default-js","html-vite/default-js","internal/react16-webpack","internal/react18-webpack-babel","react-native-web-vite/expo-ts"];var toChoices=c=>({label:allTemplates[c].name,value:c}),sandbox=async({output:outputDirectory,filterValue,init,...options})=>{let selectedConfig=allTemplates[filterValue],templateId=selectedConfig?filterValue:null,{packageManager:pkgMgr}=options,packageManager=import_common22.JsPackageManagerFactory.getPackageManager({force:pkgMgr}),latestVersion=await packageManager.latestVersion("storybook"),nextVersion=await packageManager.latestVersion("storybook@next")??"0.0.0",currentVersion=import_common22.versions.storybook,isPrerelease=(0,import_semver11.prerelease)(currentVersion),isOutdated=(0,import_semver11.lt)(currentVersion,isPrerelease?nextVersion:latestVersion),borderColor=isOutdated?"#FC521F":"#F1618C",downloadType=!isOutdated&&init?"after-storybook":"before-storybook",branch=isPrerelease?"next":"main",messages={welcome:`Creating a Storybook ${import_picocolors17.default.bold(currentVersion)} sandbox..`,notLatest:import_picocolors17.default.red(import_ts_dedent17.dedent`
|
|
232
|
+
This version is behind the latest release, which is: ${import_picocolors17.default.bold(latestVersion)}!
|
|
425
233
|
You likely ran the init command through npx, which can use a locally cached version, to get the latest please run:
|
|
426
|
-
${
|
|
234
|
+
${import_picocolors17.default.bold("npx storybook@latest sandbox")}
|
|
427
235
|
|
|
428
236
|
You may want to CTRL+C to stop, and run with the latest version instead.
|
|
429
|
-
`),longInitTime:
|
|
430
|
-
`),{borderStyle:"round",padding:1,borderColor})
|
|
237
|
+
`),longInitTime:import_picocolors17.default.yellow("The creation of the sandbox will take longer, because we will need to run init."),prerelease:import_picocolors17.default.yellow("This is a pre-release version.")};if(import_node_logger21.logger.logBox([messages.welcome].concat(isOutdated&&!isPrerelease?[messages.notLatest]:[]).concat(init&&(isOutdated||isPrerelease)?[messages.longInitTime]:[]).concat(isPrerelease?[messages.prerelease]:[]).join(`
|
|
238
|
+
`),{borderStyle:"round",padding:1,borderColor}),!selectedConfig){let filterRegex=new RegExp(`^${filterValue||""}`,"i"),keys=Object.keys(allTemplates),choices=keys.reduce((acc,group)=>{let current=allTemplates[group];return(!filterValue||current.name.match(filterRegex)||group.match(filterRegex)||current.expected.builder.match(filterRegex)||current.expected.framework.match(filterRegex)||current.expected.renderer.match(filterRegex))&&acc.push(group),acc},[]);if(choices.length===0&&(import_node_logger21.logger.logBox(import_ts_dedent17.dedent`
|
|
431
239
|
🔎 You filtered out all templates. 🔍
|
|
432
240
|
|
|
433
|
-
After filtering all the templates with "${
|
|
241
|
+
After filtering all the templates with "${import_picocolors17.default.yellow(filterValue)}", we found no results. Please try again with a different filter.
|
|
434
242
|
|
|
435
243
|
Available templates:
|
|
436
|
-
${keys.map(key=>
|
|
244
|
+
${keys.map(key=>import_picocolors17.default.blue(`- ${key}`)).join(`
|
|
437
245
|
`)}
|
|
438
|
-
`.trim(),{borderStyle:"round",padding:1,borderColor:"#F1618C"})
|
|
439
|
-
🤗 Welcome to ${
|
|
246
|
+
`.trim(),{borderStyle:"round",padding:1,borderColor:"#F1618C"}),process.exit(1)),choices.length===1?[templateId]=choices:(import_node_logger21.logger.logBox(import_ts_dedent17.dedent`
|
|
247
|
+
🤗 Welcome to ${import_picocolors17.default.yellow("sb sandbox")}! 🤗
|
|
440
248
|
|
|
441
|
-
Create a ${
|
|
249
|
+
Create a ${import_picocolors17.default.green("new project")} to minimally reproduce Storybook issues.
|
|
442
250
|
|
|
443
251
|
1. select an environment that most closely matches your project setup.
|
|
444
252
|
2. select a location for the reproduction, outside of your project.
|
|
445
253
|
|
|
446
254
|
After the reproduction is ready, we'll guide you through the next steps.
|
|
447
|
-
`.trim(),{borderStyle:"round",padding:1,borderColor:"#F1618C"})
|
|
448
|
-
Template downloaded from ${
|
|
255
|
+
`.trim(),{borderStyle:"round",padding:1,borderColor:"#F1618C"}),templateId=await promptSelectedTemplate(choices)),!!!(templateId??null)){import_node_logger21.logger.error("Somehow we got no templates. Please rerun this command!");return}if(selectedConfig=templateId?allTemplates[templateId]:void 0,!selectedConfig)throw new Error("\u{1F6A8} Sandbox: please specify a valid template type")}let selectedDirectory=outputDirectory,outputDirectoryName=outputDirectory||templateId;selectedDirectory&&(0,import_node_fs8.existsSync)(`${selectedDirectory}`)&&(import_node_logger21.logger.log(`\u26A0\uFE0F ${selectedDirectory} already exists! Overwriting...`),await(0,import_promises10.rm)(selectedDirectory,{recursive:!0,force:!0})),selectedDirectory||(selectedDirectory=await import_node_logger21.prompt.text({message:"Enter the output directory",initialValue:outputDirectoryName??void 0,validate:directoryName=>(0,import_node_fs8.existsSync)(directoryName)?`${directoryName} already exists. Please choose another name.`:void 0},{onCancel:()=>{import_node_logger21.logger.log("Command cancelled by the user. Exiting..."),process.exit(1)}})),invariant(selectedDirectory);try{let templateDestination=(0,import_node_path11.isAbsolute)(selectedDirectory)?selectedDirectory:(0,import_node_path11.join)(process.cwd(),selectedDirectory);import_node_logger21.logger.log(`\u{1F3C3} Adding ${selectedConfig.name} into ${templateDestination}`),import_node_logger21.logger.log(`\u{1F4E6} Downloading sandbox template (${import_picocolors17.default.bold(downloadType)})...`);try{let gitPath=`github:storybookjs/sandboxes/${templateId}/${downloadType}#${branch}`;if(await(0,import_giget.downloadTemplate)(gitPath,{force:!0,dir:templateDestination}),(await(0,import_promises10.readdir)(templateDestination)).length===0){let selected=import_picocolors17.default.yellow(templateId);throw new Error(import_ts_dedent17.dedent`
|
|
256
|
+
Template downloaded from ${import_picocolors17.default.blue(gitPath)} is empty.
|
|
449
257
|
Are you use it exists? Or did you want to set ${selected} to inDevelopment first?
|
|
450
|
-
`)}if(downloadType==="before-storybook"&&init){let before=process.cwd();process.chdir(templateDestination);let{initiate}=await import("create-storybook");await initiate({dev:process.env.CI!=="true"&&process.env.IN_STORYBOOK_SANDBOX!=="true",...options,features:["docs","test"]}),process.chdir(before)}}catch(err){throw
|
|
258
|
+
`)}if(downloadType==="before-storybook"&&init){let before=process.cwd();process.chdir(templateDestination);let{initiate}=await import("create-storybook");await initiate({dev:process.env.CI!=="true"&&process.env.IN_STORYBOOK_SANDBOX!=="true",...options,features:["docs","test"]}),process.chdir(before)}}catch(err){throw import_node_logger21.logger.error(`\u{1F6A8} Failed to download sandbox template: ${String(err)}`),err}let initMessage=init?import_picocolors17.default.yellow(import_ts_dedent17.dedent`
|
|
451
259
|
yarn install
|
|
452
260
|
yarn storybook
|
|
453
|
-
`):`Recreate your setup, then ${
|
|
261
|
+
`):`Recreate your setup, then ${import_picocolors17.default.yellow("npx storybook@latest init")}`;import_node_logger21.logger.logBox(import_ts_dedent17.dedent`
|
|
454
262
|
🎉 Your Storybook reproduction project is ready to use! 🎉
|
|
455
263
|
|
|
456
|
-
${
|
|
264
|
+
${import_picocolors17.default.yellow(`cd ${selectedDirectory}`)}
|
|
457
265
|
${initMessage}
|
|
458
266
|
|
|
459
267
|
Once you've recreated the problem you're experiencing, please:
|
|
460
268
|
|
|
461
|
-
1. Document any additional steps in ${
|
|
269
|
+
1. Document any additional steps in ${import_picocolors17.default.cyan("README.md")}
|
|
462
270
|
2. Publish the repository to github
|
|
463
271
|
3. Link to the repro repository in your issue
|
|
464
272
|
|
|
465
273
|
Having a clean repro helps us solve your issue faster! 🙏
|
|
466
|
-
`.trim(),{borderStyle:"round",padding:1,borderColor:"#F1618C"})
|
|
467
|
-
|
|
468
|
-
\
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
274
|
+
`.trim(),{borderStyle:"round",padding:1,borderColor:"#F1618C"})}catch(error){throw import_node_logger21.logger.error("\u{1F6A8} Failed to create sandbox"),error}};async function promptSelectedTemplate(choices){return await import_node_logger21.prompt.select({message:"Select a template",options:choices.map(toChoices)})}var import_common23=require("storybook/internal/common"),import_common24=require("storybook/internal/common"),import_core_server2=require("storybook/internal/core-server"),import_node_logger23=require("storybook/internal/node-logger"),import_server_errors2=require("storybook/internal/server-errors"),import_telemetry=require("storybook/internal/telemetry"),import_cross_spawn2=__toESM(require_cross_spawn(),1),import_picocolors18=__toESM(require_picocolors(),1),import_semver12=__toESM(require_semver2(),1),import_ts_dedent18=require("ts-dedent");init_utils();var import_node_logger22=require("storybook/internal/node-logger");init_util();async function collectAutomigrationsAcrossProjects(options){let{fixes,projects,taskLog}=options,automigrationMap=new Map;import_node_logger22.logger.debug(`Starting automigration collection across ${projects.length} projects and ${fixes.length} fixes...`);function collectResult(fix,project,status,result){let existing=automigrationMap.get(fix.id);existing?existing.reports.push({project,result,status}):automigrationMap.set(fix.id,{fix,reports:[{result,status,project}]})}for(let project of projects){let projectName=shortenPath(project.configDir);taskLog.message(`Checking automigrations for ${projectName}...`),import_node_logger22.logger.debug(`Processing project: ${projectName}`);for(let fix of fixes)try{import_node_logger22.logger.debug(`Checking fix ${fix.id} for project ${projectName}...`);let checkOptions={packageManager:project.packageManager,configDir:project.configDir,mainConfig:project.mainConfig,storybookVersion:project.storybookVersion,previewConfigPath:project.previewConfigPath,mainConfigPath:project.mainConfigPath,storiesPaths:project.storiesPaths},result=await fix.check(checkOptions);result!==null?collectResult(fix,project,"check_succeeded",result):collectResult(fix,project,"not_applicable")}catch(error){collectResult(fix,project,"check_failed"),import_node_logger22.logger.debug(`Failed to check fix ${fix.id} for project ${shortenPath(project.configDir)}.`),import_node_logger22.logger.debug(`${error instanceof Error?error.stack:String(error)}`)}}let allAutomigrations=Array.from(automigrationMap.values()),applicableAutomigrations=allAutomigrations.filter(am=>am.reports.every(rep=>rep.status!=="not_applicable")),{successAutomigrations,failedAutomigrations}=applicableAutomigrations.reduce((acc,{fix,reports})=>{let successReports=reports.filter(report=>report.status==="check_succeeded"),failedReports=reports.filter(report=>report.status==="check_failed");return successReports.length>0&&acc.successAutomigrations.push(fix.id),failedReports.length>0&&acc.failedAutomigrations.push(fix.id),acc},{successAutomigrations:[],failedAutomigrations:[]});return taskLog.message(`
|
|
275
|
+
Automigrations detected:`),successAutomigrations.forEach(fixId=>{taskLog.message(`${import_node_logger22.CLI_COLORS.success(`${import_node_logger22.logger.SYMBOLS.success} ${fixId}`)}`)}),failedAutomigrations.forEach(fixId=>{taskLog.message(`${import_node_logger22.CLI_COLORS.error(`${import_node_logger22.logger.SYMBOLS.error} ${fixId}`)}`)}),failedAutomigrations.length>0?taskLog.error(`${failedAutomigrations.length} automigration ${failedAutomigrations.length>1?"checks":"check"} failed`):taskLog.success(`${applicableAutomigrations.length===0?"No automigrations detected":`${applicableAutomigrations.length} automigration(s) detected`}`),allAutomigrations}var formatProjectDirs=list=>{let relativeDirs=list.filter(p=>p.status==="check_succeeded").map(p=>shortenPath(p.project.configDir)||".");if(relativeDirs.length<=1)return relativeDirs.join(", ");let remaining=relativeDirs.length-1;return`${relativeDirs.slice(0,1).join(", ")}${remaining>0?` and ${remaining} more...`:""}`};async function promptForAutomigrations(automigrations,options){if(automigrations.length===0)return[];if(options.dryRun)return import_node_logger22.logger.log("Detected automigrations (dry run - no changes will be made):"),automigrations.forEach(({fix,reports:list})=>{import_node_logger22.logger.log(` - ${fix.id} (${formatProjectDirs(list)})`)}),[];if(options.yes)return import_node_logger22.logger.log("Running all detected automigrations:"),automigrations.forEach(({fix,reports:list})=>{import_node_logger22.logger.log(` - ${fix.id} (${formatProjectDirs(list)})`)}),automigrations;let choices=automigrations.map(am=>{let hint=[];hint.push(`${am.fix.prompt()}`),am.fix.link&&hint.push(`More info: ${am.fix.link}`);let label=am.reports.length>1?`${am.fix.id} (${formatProjectDirs(am.reports)})`:am.fix.id;return{value:am.fix.id,label,hint:hint.join(`
|
|
276
|
+
`)}}),selectedIds=await import_node_logger22.prompt.multiselect({message:"Select automigrations to run",options:choices,initialValues:choices.map(c=>c.value)});return automigrations.filter(am=>selectedIds.includes(am.fix.id))}async function runAutomigrationsForProjects(selectedAutomigrations,options){let{dryRun,skipInstall,automigrations}=options,projectResults={},applicableAutomigrations=selectedAutomigrations.filter(am=>am.reports.every(rep=>rep.status!=="not_applicable")),projectAutomigrationResults=new Map;for(let automigration of automigrations)for(let report of automigration.reports){let{project,result,status}=report,existing=projectAutomigrationResults.get(project.configDir)||[];existing.length>0?existing.push({fix:automigration.fix,project,result,status}):projectAutomigrationResults.set(project.configDir,[{fix:automigration.fix,project,result,status}])}let projectIndex=0;for(let[configDir,projectAutomigration]of projectAutomigrationResults){let countPrefix=projectAutomigrationResults.size>1?`(${++projectIndex}/${projectAutomigrationResults.size}) `:"",{project}=projectAutomigration[0],projectName=shortenPath(project.configDir),taskLog=applicableAutomigrations.length>0?import_node_logger22.prompt.taskLog({id:`automigrate-${projectName}`,title:`${countPrefix}Running automigrations for ${projectName}`}):{message:message=>{import_node_logger22.logger.debug(`${message}`)},error:message=>{import_node_logger22.logger.debug(`${message}`)},success:message=>{import_node_logger22.logger.debug(`${message}`)}},fixResults={};for(let automigration of projectAutomigration){let{fix,result,project:project2,status}=automigration;if(status==="not_applicable"){fixResults[fix.id]="unnecessary";continue}if(status==="check_failed"){fixResults[fix.id]="check_failed";continue}if(!selectedAutomigrations.some(am=>am.fix.id===fix.id&&am.reports.some(report=>report.project.configDir===project2.configDir))){fixResults[fix.id]="skipped";continue}try{if(typeof fix.run=="function"){let runOptions={packageManager:project2.packageManager,result,dryRun,mainConfigPath:project2.mainConfigPath,previewConfigPath:project2.previewConfigPath,mainConfig:project2.mainConfig,configDir:project2.configDir,skipInstall,storybookVersion:project2.storybookVersion,storiesPaths:project2.storiesPaths};await fix.run(runOptions),fixResults[fix.id]="succeeded",taskLog.message(import_node_logger22.CLI_COLORS.success(`${import_node_logger22.logger.SYMBOLS.success} ${fix.id}`))}}catch(error){fixResults[fix.id]="failed",taskLog.message(import_node_logger22.CLI_COLORS.error(`${import_node_logger22.logger.SYMBOLS.error} ${automigration.fix.id}`)),import_node_logger22.logger.debug(`${error instanceof Error?error.stack:String(error)}`)}}let automigrationsWithErrors=Object.values(fixResults).filter(status=>status==="failed");if(automigrationsWithErrors.length>0){let count=automigrationsWithErrors.length;taskLog.error(`${countPrefix}${count} automigrations failed for ${projectName}`)}else taskLog.success(`${countPrefix}Completed automigrations for ${projectName}`);projectResults[configDir]=fixResults}return projectResults}async function runAutomigrations(projects,options){let projectAutomigrationData=projects.map(project=>({configDir:project.configDir,packageManager:project.packageManager,mainConfig:project.mainConfig,mainConfigPath:project.mainConfigPath,previewConfigPath:project.previewConfigPath,storybookVersion:project.currentCLIVersion,beforeVersion:project.beforeVersion,storiesPaths:project.storiesPaths})),detectingAutomigrationTask=import_node_logger22.prompt.taskLog({id:"detect-automigrations",title:projectAutomigrationData.length>1?`Detecting automigrations for ${projectAutomigrationData.length} projects...`:"Detecting automigrations..."}),detectedAutomigrations=await collectAutomigrationsAcrossProjects({fixes:allFixes,projects:projectAutomigrationData,dryRun:options.dryRun,yes:options.yes,skipInstall:options.skipInstall,taskLog:detectingAutomigrationTask}),successfulAutomigrations=detectedAutomigrations.filter(am=>am.reports.some(report=>report.status==="check_succeeded")),selectedAutomigrations=await promptForAutomigrations(successfulAutomigrations,{dryRun:options.dryRun,yes:options.yes}),automigrationResults=await runAutomigrationsForProjects(selectedAutomigrations,{automigrations:detectedAutomigrations,dryRun:options.dryRun,yes:options.yes,skipInstall:options.skipInstall});return Object.entries(automigrationResults).forEach(([configDir,fixResults])=>{if(fixResults[rnstorybookConfig.id]==="succeeded"){let project=projects.find(p=>p.configDir===configDir);if(project){let oldConfigDir=project.configDir;project.configDir=project.configDir.replace(".storybook",".rnstorybook"),automigrationResults[project.configDir]=fixResults,delete automigrationResults[oldConfigDir]}}}),{detectedAutomigrations,automigrationResults}}init_util();function getUpgradeResults(projectResults,doctorResults){let successfulProjects=[],failedProjects=[],projectsWithNoFixes=[];return{allProjects:Object.entries(projectResults).map(([configDir,fixResults])=>{let automigrationResults=Object.entries(fixResults).map(([fixId,status])=>{let succeeded=status==="succeeded"||status==="manual_succeeded";return{fixId,status,succeeded}}),hasFailures=automigrationResults.some(fix=>fix.status==="failed"||fix.status==="check_failed"),hasSuccessfulFixes=automigrationResults.some(fix=>fix.status==="succeeded"||fix.status==="manual_succeeded"),noFixesNeeded=Object.keys(fixResults).length===0,migratedSuccessfully=hasSuccessfulFixes&&!hasFailures,hasDoctorReport=!!doctorResults[configDir];return hasFailures?failedProjects.push(configDir):migratedSuccessfully?successfulProjects.push(configDir):noFixesNeeded&&projectsWithNoFixes.push(configDir),{configDir,migratedSuccessfully,hasDoctorReport,automigrations:{fixes:automigrationResults,noFixesNeeded,hasFailures,hasSuccessfulFixes},doctor:doctorResults[configDir]?{status:doctorResults[configDir].status,isHealthy:doctorResults[configDir].status==="healthy"}:null}}),successfulProjects,failedProjects,projectsWithNoFixes}}function logUpgradeResults(projectResults,detectedAutomigrations,doctorResults){let{successfulProjects,failedProjects,projectsWithNoFixes}=getUpgradeResults(projectResults,doctorResults);if(failedProjects.length>0){if(import_node_logger23.logTracker.enableLogWriting(),import_node_logger23.logger.step("The upgrade is complete, but some projects failed to upgrade or migrate completely. Please see the debug logs for more details."),successfulProjects.length>0){let successfulProjectsList=successfulProjects.map(dir=>` \u2022 ${shortenPath(dir)}`).join(`
|
|
277
|
+
`);import_node_logger23.logger.log(`${import_node_logger23.CLI_COLORS.success("Successfully upgraded:")}
|
|
278
|
+
${successfulProjectsList}`)}let failedProjectsList=failedProjects.map(dir=>` \u2022 ${shortenPath(dir)}`).join(`
|
|
279
|
+
`);if(import_node_logger23.logger.log(`${import_node_logger23.CLI_COLORS.error("Failed to upgrade:")}
|
|
280
|
+
Some automigrations failed, please check the logs in the log file for more details.
|
|
281
|
+
${failedProjectsList}`),projectsWithNoFixes.length>0){let projectList=projectsWithNoFixes.map(dir=>` \u2022 ${shortenPath(dir)}`).join(`
|
|
282
|
+
`);import_node_logger23.logger.log(`${import_node_logger23.CLI_COLORS.info("No applicable migrations:")}
|
|
283
|
+
${projectList}`)}}else import_node_logger23.logger.step("The upgrade is complete!"),Object.values(doctorResults).every(result=>result.status==="healthy")?import_node_logger23.logger.log(`${import_node_logger23.CLI_COLORS.success("Your project(s) have been upgraded successfully! \u{1F389}")}`):import_node_logger23.logger.log(`${import_picocolors18.default.yellow("Your project(s) have been upgraded successfully, but some issues were found which need your attention, please check Storybook doctor logs above.")}`);let automigrationLinks=detectedAutomigrations.filter(am=>Object.entries(projectResults).some(([_,fixResults])=>fixResults[am.fix.id]==="failed"||fixResults[am.fix.id]==="succeeded"||fixResults[am.fix.id]==="check_failed")).map(am=>`\u2022 ${(0,import_node_logger23.createHyperlink)(am.fix.id,am.fix.link)}`);if(automigrationLinks.length>0){let automigrationLinksMessage=[`If you want to learn more about the automigrations that executed in your project(s), please check the following links:
|
|
284
|
+
`,...automigrationLinks].join(`
|
|
285
|
+
`);import_node_logger23.logger.log(automigrationLinksMessage)}import_node_logger23.logger.log(`For a full list of changes, please check our migration guide: ${import_node_logger23.CLI_COLORS.cta("https://storybook.js.org/docs/migration-guide")}`)}async function sendMultiUpgradeTelemetry(options){let{allProjects,selectedProjects,projectResults,doctorResults,hasUserInterrupted=!1}=options,{successfulProjects,failedProjects,projectsWithNoFixes}=getUpgradeResults(projectResults,doctorResults),processedProjects=new Set([...Object.keys(projectResults),...Object.keys(doctorResults)]),incompleteProjects=selectedProjects.map(p=>p.configDir).filter(configDir=>!processedProjects.has(configDir)),projectsWithDoctorReports=Object.values(doctorResults).filter(result=>result.status!=="healthy").length;try{await(0,import_telemetry.telemetry)("multi-upgrade",{totalDetectedProjects:allProjects.length,totalSelectedProjects:selectedProjects.length,projectsWithSuccessfulAutomigrations:successfulProjects.length,projectsWithFailedAutomigrations:failedProjects.length,projectsWithNoAutomigrations:projectsWithNoFixes.length,projectsWithDoctorReports,incompleteProjects:incompleteProjects.length,hasUserInterrupted})}catch(error){import_node_logger23.logger.debug(`Failed to send multi-upgrade telemetry: ${String(error)}`)}}async function upgrade(options){await(0,import_core_server2.withTelemetry)("upgrade",{cliOptions:{...options,configDir:options.configDir?.[0]}},async()=>{import_node_logger23.logger.intro(`Storybook Upgrade - ${import_picocolors18.default.bold(`v${import_common23.versions.storybook}`)}`);let projectsResult=await getProjects(options);if(projectsResult===void 0||projectsResult.selectedProjects.length===0)return;let{allProjects,selectedProjects:storybookProjects}=projectsResult;storybookProjects.length>1?import_node_logger23.logger.info(`Upgrading the following projects:
|
|
286
|
+
${storybookProjects.map(p=>`${import_picocolors18.default.cyan(shortenPath(p.configDir))}: ${import_picocolors18.default.bold(p.beforeVersion)} -> ${import_picocolors18.default.bold(p.currentCLIVersion)}`).join(`
|
|
287
|
+
`)}`):import_node_logger23.logger.info(`Upgrading from ${import_picocolors18.default.bold(storybookProjects[0].beforeVersion)} to ${import_picocolors18.default.bold(storybookProjects[0].currentCLIVersion)}`);let automigrationResults={},doctorResults={},handleInterruption=async()=>{throw import_node_logger23.logger.log(`
|
|
288
|
+
|
|
289
|
+
Upgrade interrupted by user.`),allProjects.length>1&&await sendMultiUpgradeTelemetry({allProjects,selectedProjects:storybookProjects,projectResults:automigrationResults,doctorResults,hasUserInterrupted:!0}),new import_common24.HandledError("Upgrade cancelled by user")};process.on("SIGINT",handleInterruption),process.on("SIGTERM",handleInterruption);try{if(processAutoblockerResults(storybookProjects,message=>{import_node_logger23.logger.error(import_ts_dedent18.dedent`Blockers detected\n\n${message}`)}))throw new import_common24.HandledError("Blockers detected");if(storybookProjects.some(project=>{if(!project.isCanary&&(0,import_semver12.lt)(project.currentCLIVersion,project.beforeVersion))throw new import_server_errors2.UpgradeStorybookToLowerVersionError({beforeVersion:project.beforeVersion,currentVersion:project.currentCLIVersion});if(!project.beforeVersion)throw new import_server_errors2.UpgradeStorybookUnknownCurrentVersionError}),!options.dryRun){let task=import_node_logger23.prompt.taskLog({id:"upgrade-dependencies",title:"Fetching versions to update package.json files.."});try{let loggedPaths=[];for(let project of storybookProjects){import_node_logger23.logger.debug(`Updating dependencies in ${shortenPath(project.configDir)}...`);let newPaths=project.packageManager.packageJsonPaths.map(shortenPath).filter(path7=>!loggedPaths.includes(path7));newPaths.length>0&&(task.message(newPaths.join(`
|
|
290
|
+
`)),loggedPaths.push(...newPaths)),await upgradeStorybookDependencies({packageManager:project.packageManager,isCanary:project.isCanary,isCLIOutdated:project.isCLIOutdated,isCLIPrerelease:project.isCLIPrerelease,isCLIExactLatest:project.isCLIExactLatest,isCLIExactPrerelease:project.isCLIExactPrerelease})}task.success("Updated package versions in package.json files")}catch(err){task.error(`Failed to upgrade dependencies: ${String(err)}`)}}let{automigrationResults:automigrationResults2,detectedAutomigrations}=await runAutomigrations(storybookProjects,options),rootPackageManager=storybookProjects.length>1?import_common24.JsPackageManagerFactory.getPackageManager({force:options.packageManager}):storybookProjects[0].packageManager;rootPackageManager.type==="npm"?await rootPackageManager.installDependencies({force:!0}):await rootPackageManager.installDependencies(),rootPackageManager.type!=="yarn1"&&rootPackageManager.isStorybookInMonorepo()&&(import_node_logger23.logger.warn("Since you are in a monorepo, we advise you to deduplicate your dependencies. We can do this for you but it might take some time."),options.yes||await import_node_logger23.prompt.confirm({message:`Execute ${rootPackageManager.getRunCommand("dedupe")}?`,initialValue:!0})?rootPackageManager.type==="npm"?await rootPackageManager.dedupeDependencies({force:!0}):await rootPackageManager.dedupeDependencies():import_node_logger23.logger.log(`If you find any issues running Storybook, you can run ${rootPackageManager.getRunCommand("dedupe")} manually to deduplicate your dependencies and try again.`));let doctorProjects=storybookProjects.map(project=>({configDir:project.configDir,packageManager:project.packageManager,storybookVersion:project.currentCLIVersion,mainConfig:project.mainConfig}));if(import_node_logger23.logger.step("Checking the health of your project(s).."),doctorResults=await runMultiProjectDoctor(doctorProjects),displayDoctorResults(doctorResults)&&import_node_logger23.logTracker.enableLogWriting(),logUpgradeResults(automigrationResults2,detectedAutomigrations,doctorResults),!options.disableTelemetry){for(let project of storybookProjects){let fixResults=automigrationResults2[project.configDir]||{},doctorFailureCount=0,doctorErrorCount=0;Object.values(doctorResults[project.configDir]?.diagnostics||{}).forEach(status=>{status==="has_issues"&&doctorFailureCount++,status==="check_error"&&doctorErrorCount++});let automigrationFailureCount=Object.values(fixResults).filter(status=>status==="failed").length,automigrationPreCheckFailure=project.autoblockerCheckResults&&project.autoblockerCheckResults.length>0?project.autoblockerCheckResults?.map(result=>result.result!==null?result.blocker.id:null).filter(Boolean):null;await(0,import_telemetry.telemetry)("upgrade",{beforeVersion:project.beforeVersion,afterVersion:project.currentCLIVersion,automigrationResults:fixResults,automigrationFailureCount,automigrationPreCheckFailure,doctorResults:doctorResults[project.configDir]?.diagnostics||{},doctorFailureCount,doctorErrorCount})}await sendMultiUpgradeTelemetry({allProjects,selectedProjects:storybookProjects,projectResults:automigrationResults2,doctorResults})}}finally{process.removeListener("SIGINT",handleInterruption),process.removeListener("SIGTERM",handleInterruption)}})}(0,import_telemetry2.addToGlobalContext)("cliVersion",import_common25.versions.storybook);var handleCommandFailure=async error=>{error instanceof import_common25.HandledError||import_node_logger24.logger.error(String(error));let logFile=await import_node_logger24.logTracker.writeToFile();import_node_logger24.logger.log(`Storybook debug logs can be found at: ${logFile}`),import_node_logger24.logger.outro(""),process.exit(1)},command=name=>import_commander.program.command(name).option("--disable-telemetry","Disable sending telemetry data",process.env.STORYBOOK_DISABLE_TELEMETRY&&process.env.STORYBOOK_DISABLE_TELEMETRY!=="false").option("--debug","Get more logs in debug mode",!1).option("--enable-crash-reports","Enable sending crash reports to telemetry data").option("--write-logs","Write all debug logs to a file at the end of the run").option("--loglevel <trace | debug | info | warn | error | silent>","Define log level","info").hook("preAction",async self2=>{try{let options=self2.opts();options.loglevel&&import_node_logger24.logger.setLogLevel(options.loglevel),options.writeLogs&&import_node_logger24.logTracker.enableLogWriting(),await(0,import_cli3.globalSettings)()}catch(e){import_node_logger24.logger.error(`Error loading global settings:
|
|
291
|
+
`+String(e))}}).hook("postAction",async()=>{if(import_node_logger24.logTracker.shouldWriteLogsToFile){let logFile=await import_node_logger24.logTracker.writeToFile();import_node_logger24.logger.log(`Storybook debug logs can be found at: ${logFile}`),import_node_logger24.logger.outro(import_node_logger24.CLI_COLORS.success("Done!"))}});command("init").description("Initialize Storybook into your project").option("-f --force","Force add Storybook").option("-s --skip-install","Skip installing deps").option("--package-manager <npm|pnpm|yarn1|yarn2>","Force package manager for installing deps").option("--use-pnp","Enable PnP mode for Yarn 2+").option("-p --parser <babel | babylon | flow | ts | tsx>","jscodeshift parser").option("-t --type <type>","Add Storybook for a specific project type").option("-y --yes","Answer yes to all prompts").option("-b --builder <webpack5 | vite>","Builder library").option("-l --linkable","Prepare installation for link (contributor helper)").option("--dev","Launch the development server after completing initialization. Enabled by default (default: true)",process.env.CI!=="true"&&process.env.IN_STORYBOOK_SANDBOX!=="true").option("--no-dev","Complete the initialization of Storybook without launching the Storybook development server");command("add <addon>").description("Add an addon to your Storybook").option("--package-manager <npm|pnpm|yarn1|yarn2|bun>","Force package manager for installing dependencies").option("-c, --config-dir <dir-name>","Directory where to load Storybook configurations from").option("--skip-install","Skip installing deps").option("-s --skip-postinstall","Skip package specific postinstall config modifications").option("-y --yes","Skip prompting the user").option("--skip-doctor","Skip doctor check").action((addonName,options)=>add(addonName,options));command("remove <addon>").description("Remove an addon from your Storybook").option("--package-manager <npm|pnpm|yarn1|yarn2|bun>","Force package manager for installing dependencies").option("-c, --config-dir <dir-name>","Directory where to load Storybook configurations from").option("-s --skip-install","Skip installing deps").action((addonName,options)=>(0,import_core_server3.withTelemetry)("remove",{cliOptions:options},async()=>{let packageManager=import_common25.JsPackageManagerFactory.getPackageManager({configDir:options.configDir,force:options.packageManager});await(0,import_common25.removeAddon)(addonName,{configDir:options.configDir,packageManager,skipInstall:options.skipInstall}),options.disableTelemetry||await(0,import_telemetry2.telemetry)("remove",{addon:addonName,source:"cli"})}));command("upgrade").description(`Upgrade your Storybook packages to v${import_common25.versions.storybook}`).option("--package-manager <npm|pnpm|yarn1|yarn2|bun>","Force package manager for installing dependencies").option("-y --yes","Skip prompting the user").option("-f --force","force the upgrade, skipping autoblockers").option("-n --dry-run","Only check for upgrades, do not install").option("-s --skip-check","Skip postinstall version and automigration checks").option("-c, --config-dir <dir-name...>","Directory(ies) where to load Storybook configurations from").action(async options=>{import_node_logger24.prompt.setPromptLibrary("clack"),await upgrade(options).catch(handleCommandFailure)});command("info").description("Prints debugging information about the local environment").action(async()=>{import_node_logger24.logger.log(import_picocolors19.default.bold(`
|
|
292
|
+
Storybook Environment Info:`));let activePackageManager=import_common25.JsPackageManagerFactory.getPackageManager().type.replace(/\d/,""),output=await import_envinfo.default.run({System:["OS","CPU","Shell"],Binaries:["Node","Yarn","npm","pnpm"],Browsers:["Chrome","Edge","Firefox","Safari"],npmPackages:"{@storybook/*,*storybook*,sb,chromatic}",npmGlobalPackages:"{@storybook/*,*storybook*,sb,chromatic}"}),activePackageManagerLine=output.match(new RegExp(`${activePackageManager}:.*`,"i"));import_node_logger24.logger.log(output.replace(activePackageManagerLine,import_picocolors19.default.bold(`${activePackageManagerLine} <----- active`)))});command("migrate [migration]").description("Run a Storybook codemod migration on your source files").option("-l --list","List available migrations").option("-g --glob <glob>","Glob for files upon which to apply the migration","**/*.js").option("-p --parser <babel | babylon | flow | ts | tsx>","jscodeshift parser").option("-c, --config-dir <dir-name>","Directory where to load Storybook configurations from").option("-n --dry-run","Dry run: verify the migration exists and show the files to which it will be applied").option("-r --rename <from-to>",'Rename suffix of matching files after codemod has been applied, e.g. ".js:.ts"').action((migration,{configDir,glob,dryRun,list,rename:rename2,parser})=>{migrate(migration,{configDir,glob,dryRun,list,rename:rename2,parser}).catch(handleCommandFailure)});command("sandbox [filterValue]").alias("repro").description("Create a sandbox from a set of possible templates").option("-o --output <outDir>","Define an output directory").option("--no-init","Whether to download a template without an initialized Storybook",!1).action((filterValue,options)=>sandbox({filterValue,...options}).catch(handleCommandFailure));command("link <repo-url-or-directory>").description("Pull down a repro from a URL (or a local directory), link it, and run storybook").option("--local","Link a local directory already in your file system").option("--no-start","Start the storybook",!0).action((target,{local,start})=>link({target,local,start}).catch(handleCommandFailure));command("automigrate [fixId]").description("Check storybook for incompatibilities or migrations and apply fixes").option("-y --yes","Skip prompting the user").option("-n --dry-run","Only check for fixes, do not actually run them").option("--package-manager <npm|pnpm|yarn1|yarn2|bun>","Force package manager").option("-l --list","List available migrations").option("-c, --config-dir <dir-name>","Directory of Storybook configurations to migrate").option("-s --skip-install","Skip installing deps").option("--renderer <renderer-pkg-name>","The renderer package for the framework Storybook is using.").option("--skip-doctor","Skip doctor check").action(async(fixId,options)=>{await doAutomigrate({fixId,...options}).catch(handleCommandFailure)});command("doctor").description("Check Storybook for known problems and provide suggestions or fixes").option("--package-manager <npm|pnpm|yarn1|yarn2|bun>","Force package manager").option("-c, --config-dir <dir-name>","Directory of Storybook configuration").action(async options=>{await doctor(options).catch(handleCommandFailure)});import_commander.program.on("command:*",([invalidCmd])=>{let errorMessage=` Invalid command: ${import_picocolors19.default.bold(invalidCmd)}.
|
|
293
|
+
See --help for a list of available commands.`,suggestion=import_commander.program.commands.map(cmd=>cmd.name()).find(cmd=>leven(cmd,invalidCmd)<3);suggestion&&(errorMessage+=`
|
|
294
|
+
Did you mean ${import_picocolors19.default.yellow(suggestion)}?`),import_node_logger24.logger.error(errorMessage),process.exit(1)});import_commander.program.usage("<command> [options]").version(String(version)).parse(process.argv);
|