@frontfriend/sdk 1.3.0 → 1.4.1

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.
@@ -1,9 +1,9 @@
1
- var E=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports);var Ve=E((ma,He)=>{var w=require("fs");function Yn(r){try{let e=w.readFileSync(r,"utf8");return JSON.parse(e)}catch(e){if(e.code==="ENOENT")return null;throw e}}function zn(r){try{return w.readFileSync(r,"utf8").replace(/^\uFEFF/,"")}catch(e){if(e.code==="ENOENT")return null;throw e}}function Bn(r,e,t=2){let n=JSON.stringify(e,null,t);w.writeFileSync(r,n,"utf8")}function Jn(r,e){w.writeFileSync(r,e,"utf8")}function Wn(r,e){if(e==null||typeof e=="object"&&Object.keys(e).length===0||Array.isArray(e)&&e.length===0){let n=`module.exports = ${Array.isArray(e)?"[]":"{}"};`;w.writeFileSync(r,n,"utf8")}else{let t=`module.exports = ${JSON.stringify(e,null,2)};`;w.writeFileSync(r,t,"utf8")}}function Kn(r){return w.existsSync(r)}function Zn(r){w.mkdirSync(r,{recursive:!0})}function Qn(r){w.rmSync(r,{recursive:!0,force:!0})}function es(r){w.rmSync(r,{force:!0})}function rs(r,e){w.mkdirSync(require("path").dirname(r),{recursive:!0,mode:448});let t=`${r}.${process.pid}.${Date.now()}.tmp`;try{w.writeFileSync(t,`${JSON.stringify(e,null,2)}
2
- `,{mode:384}),w.renameSync(t,r);try{w.chmodSync(r,384)}catch{}}finally{w.rmSync(t,{force:!0})}}async function ts(r,e,t){w.mkdirSync(require("path").dirname(r),{recursive:!0,mode:448});let n=`${r}.lock`,s=Date.now()+2e4,i;for(;i===void 0;)try{i=w.openSync(n,"wx",384),w.writeFileSync(i,String(process.pid))}catch(o){if(o.code!=="EEXIST")throw o;try{let c=Number(w.readFileSync(n,"utf8"));if(Number.isInteger(c)&&c>0)try{process.kill(c,0)}catch(l){if(l.code==="ESRCH"){w.unlinkSync(n);continue}}}catch(c){if(c.code==="ENOENT")continue}if(Date.now()>=s)throw t();await new Promise(c=>setTimeout(c,50))}try{return await e()}finally{w.closeSync(i),w.unlinkSync(n)}}He.exports={writePrivateJsonFileAtomic:rs,withPrivateFileLock:ts,readJsonFileSafe:Yn,readFileSafe:zn,writeJsonFile:Bn,writeTextFile:Jn,writeModuleExportsFile:Wn,fileExists:Kn,ensureDirectoryExists:Zn,removeDirectory:Qn,removeFile:es}});var ue=E((da,Me)=>{var ns="https://app.frontfriend.dev",ss=".cache/frontfriend",is={JS:["tokens.js","variables.js","semanticVariables.js","semanticDarkVariables.js","keyframes.js","animations.js","safelist.js","custom.js"],JSON:["fonts.json","icons.json","components-config.json","iconLibrary.json","version.json","versionMetadata.json","metadata.json","base.json","nativeTokens.json"]},os={FF_ID:"FF_ID",FF_API_URL:"FF_API_URL",FF_AUTH_TOKEN:"FF_AUTH_TOKEN",FF_MACHINE_TOKEN:"FRONTFRIEND_MACHINE_TOKEN"};function cs(r){if(!r)return null;try{let e=new URL(r);return e.hostname.startsWith("app.")?`${e.protocol}//${e.hostname.replace(/^app\./,"registry.")}`:null}catch{return null}}Me.exports={DEFAULT_API_URL:ns,CACHE_DIR_NAME:ss,CACHE_TTL_DAYS:7,CACHE_TTL_MS:6048e5,CACHE_FILES:is,ENV_VARS:os,deriveRegistryFromApiUrl:cs}});var We=E(($a,Je)=>{Je.exports=Be;Be.sync=us;var Ye=require("fs");function as(r,e){var t=e.pathExt!==void 0?e.pathExt:process.env.PATHEXT;if(!t||(t=t.split(";"),t.indexOf("")!==-1))return!0;for(var n=0;n<t.length;n++){var s=t[n].toLowerCase();if(s&&r.substr(-s.length).toLowerCase()===s)return!0}return!1}function ze(r,e,t){return!r.isSymbolicLink()&&!r.isFile()?!1:as(e,t)}function Be(r,e,t){Ye.stat(r,function(n,s){t(n,n?!1:ze(s,r,e))})}function us(r,e){return ze(Ye.statSync(r),r,e)}});var rr=E((Ra,er)=>{er.exports=Ze;Ze.sync=ls;var Ke=require("fs");function Ze(r,e,t){Ke.stat(r,function(n,s){t(n,n?!1:Qe(s,e))})}function ls(r,e){return Qe(Ke.statSync(r),e)}function Qe(r,e){return r.isFile()&&fs(r,e)}function fs(r,e){var t=r.mode,n=r.uid,s=r.gid,i=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),o=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),c=parseInt("100",8),l=parseInt("010",8),a=parseInt("001",8),d=c|l,u=t&a||t&l&&s===o||t&c&&n===i||t&d&&i===0;return u}});var nr=E((wa,tr)=>{var ga=require("fs"),Y;process.platform==="win32"||global.TESTING_WINDOWS?Y=We():Y=rr();tr.exports=le;le.sync=hs;function le(r,e,t){if(typeof e=="function"&&(t=e,e={}),!t){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,s){le(r,e||{},function(i,o){i?s(i):n(o)})})}Y(r,e||{},function(n,s){n&&(n.code==="EACCES"||e&&e.ignoreErrors)&&(n=null,s=!1),t(n,s)})}function hs(r,e){try{return Y.sync(r,e||{})}catch(t){if(e&&e.ignoreErrors||t.code==="EACCES")return!1;throw t}}});var lr=E((Ia,ur)=>{var D=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",sr=require("path"),ps=D?";":":",ir=nr(),or=r=>Object.assign(new Error(`not found: ${r}`),{code:"ENOENT"}),cr=(r,e)=>{let t=e.colon||ps,n=r.match(/\//)||D&&r.match(/\\/)?[""]:[...D?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(t)],s=D?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=D?s.split(t):[""];return D&&r.indexOf(".")!==-1&&i[0]!==""&&i.unshift(""),{pathEnv:n,pathExt:i,pathExtExe:s}},ar=(r,e,t)=>{typeof e=="function"&&(t=e,e={}),e||(e={});let{pathEnv:n,pathExt:s,pathExtExe:i}=cr(r,e),o=[],c=a=>new Promise((d,u)=>{if(a===n.length)return e.all&&o.length?d(o):u(or(r));let m=n[a],f=/^".*"$/.test(m)?m.slice(1,-1):m,g=sr.join(f,r),P=!f&&/^\.[\\\/]/.test(r)?r.slice(0,2)+g:g;d(l(P,a,0))}),l=(a,d,u)=>new Promise((m,f)=>{if(u===s.length)return m(c(d+1));let g=s[u];ir(a+g,{pathExt:i},(P,Mn)=>{if(!P&&Mn)if(e.all)o.push(a+g);else return m(a+g);return m(l(a,d,u+1))})});return t?c(0).then(a=>t(null,a),t):c(0)},Es=(r,e)=>{e=e||{};let{pathEnv:t,pathExt:n,pathExtExe:s}=cr(r,e),i=[];for(let o=0;o<t.length;o++){let c=t[o],l=/^".*"$/.test(c)?c.slice(1,-1):c,a=sr.join(l,r),d=!l&&/^\.[\\\/]/.test(r)?r.slice(0,2)+a:a;for(let u=0;u<n.length;u++){let m=d+n[u];try{if(ir.sync(m,{pathExt:s}))if(e.all)i.push(m);else return m}catch{}}}if(e.all&&i.length)return i;if(e.nothrow)return null;throw or(r)};ur.exports=ar;ar.sync=Es});var hr=E((Sa,fe)=>{"use strict";var fr=(r={})=>{let e=r.env||process.env;return(r.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};fe.exports=fr;fe.exports.default=fr});var dr=E((Na,mr)=>{"use strict";var pr=require("path"),ms=lr(),ds=hr();function Er(r,e){let t=r.options.env||process.env,n=process.cwd(),s=r.options.cwd!=null,i=s&&process.chdir!==void 0&&!process.chdir.disabled;if(i)try{process.chdir(r.options.cwd)}catch{}let o;try{o=ms.sync(r.command,{path:t[ds({env:t})],pathExt:e?pr.delimiter:void 0})}catch{}finally{i&&process.chdir(n)}return o&&(o=pr.resolve(s?r.options.cwd:"",o)),o}function $s(r){return Er(r)||Er(r,!0)}mr.exports=$s});var $r=E((Ta,pe)=>{"use strict";var he=/([()\][%!^"`<>&|;, *?])/g;function Rs(r){return r=r.replace(he,"^$1"),r}function gs(r,e){return r=`${r}`,r=r.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),r=r.replace(/(?=(\\+?)?)\1$/,"$1$1"),r=`"${r}"`,r=r.replace(he,"^$1"),e&&(r=r.replace(he,"^$1")),r}pe.exports.command=Rs;pe.exports.argument=gs});var gr=E((ya,Rr)=>{"use strict";Rr.exports=/^#!(.*)/});var Ir=E((Aa,wr)=>{"use strict";var ws=gr();wr.exports=(r="")=>{let e=r.match(ws);if(!e)return null;let[t,n]=e[0].replace(/#! ?/,"").split(" "),s=t.split("/").pop();return s==="env"?n:n?`${s} ${n}`:s}});var Nr=E((La,Sr)=>{"use strict";var Ee=require("fs"),Is=Ir();function Ss(r){let t=Buffer.alloc(150),n;try{n=Ee.openSync(r,"r"),Ee.readSync(n,t,0,150,0),Ee.closeSync(n)}catch{}return Is(t.toString())}Sr.exports=Ss});var Lr=E((Oa,Ar)=>{"use strict";var Ns=require("path"),Tr=dr(),yr=$r(),Ts=Nr(),ys=process.platform==="win32",As=/\.(?:com|exe)$/i,Ls=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Os(r){r.file=Tr(r);let e=r.file&&Ts(r.file);return e?(r.args.unshift(r.file),r.command=e,Tr(r)):r.file}function qs(r){if(!ys)return r;let e=Os(r),t=!As.test(e);if(r.options.forceShell||t){let n=Ls.test(e);r.command=Ns.normalize(r.command),r.command=yr.command(r.command),r.args=r.args.map(i=>yr.argument(i,n));let s=[r.command].concat(r.args).join(" ");r.args=["/d","/s","/c",`"${s}"`],r.command=process.env.comspec||"cmd.exe",r.options.windowsVerbatimArguments=!0}return r}function vs(r,e,t){e&&!Array.isArray(e)&&(t=e,e=null),e=e?e.slice(0):[],t=Object.assign({},t);let n={command:r,args:e,options:t,file:void 0,original:{command:r,args:e}};return t.shell?n:qs(n)}Ar.exports=vs});var vr=E((qa,qr)=>{"use strict";var me=process.platform==="win32";function de(r,e){return Object.assign(new Error(`${e} ${r.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${e} ${r.command}`,path:r.command,spawnargs:r.args})}function xs(r,e){if(!me)return;let t=r.emit;r.emit=function(n,s){if(n==="exit"){let i=Or(s,e);if(i)return t.call(r,"error",i)}return t.apply(r,arguments)}}function Or(r,e){return me&&r===1&&!e.file?de(e.original,"spawn"):null}function Cs(r,e){return me&&r===1&&!e.file?de(e.original,"spawnSync"):null}qr.exports={hookChildProcess:xs,verifyENOENT:Or,verifyENOENTSync:Cs,notFoundError:de}});var Pr=E((va,j)=>{"use strict";var xr=require("child_process"),$e=Lr(),Re=vr();function Cr(r,e,t){let n=$e(r,e,t),s=xr.spawn(n.command,n.args,n.options);return Re.hookChildProcess(s,n),s}function Ps(r,e,t){let n=$e(r,e,t),s=xr.spawnSync(n.command,n.args,n.options);return s.error=s.error||Re.verifyENOENTSync(s.status,n),s}j.exports=Cr;j.exports.spawn=Cr;j.exports.sync=Ps;j.exports._parse=$e;j.exports._enoent=Re});var k=E((xa,Fr)=>{"use strict";var Fs="2.0.0",Ds=Number.MAX_SAFE_INTEGER||9007199254740991,js=16,ks=250,_s=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Fr.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:js,MAX_SAFE_BUILD_LENGTH:ks,MAX_SAFE_INTEGER:Ds,RELEASE_TYPES:_s,SEMVER_SPEC_VERSION:Fs,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var G=E((Ca,Dr)=>{"use strict";var bs=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...r)=>console.error("SEMVER",...r):()=>{};Dr.exports=bs});var _=E((q,jr)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:ge,MAX_SAFE_BUILD_LENGTH:Us,MAX_LENGTH:Gs}=k(),Xs=G();q=jr.exports={};var Hs=q.re=[],Vs=q.safeRe=[],h=q.src=[],Ms=q.safeSrc=[],p=q.t={},Ys=0,we="[a-zA-Z0-9-]",zs=[["\\s",1],["\\d",Gs],[we,Us]],Bs=r=>{for(let[e,t]of zs)r=r.split(`${e}*`).join(`${e}{0,${t}}`).split(`${e}+`).join(`${e}{1,${t}}`);return r},$=(r,e,t)=>{let n=Bs(e),s=Ys++;Xs(r,s,e),p[r]=s,h[s]=e,Ms[s]=n,Hs[s]=new RegExp(e,t?"g":void 0),Vs[s]=new RegExp(n,t?"g":void 0)};$("NUMERICIDENTIFIER","0|[1-9]\\d*");$("NUMERICIDENTIFIERLOOSE","\\d+");$("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${we}*`);$("MAINVERSION",`(${h[p.NUMERICIDENTIFIER]})\\.(${h[p.NUMERICIDENTIFIER]})\\.(${h[p.NUMERICIDENTIFIER]})`);$("MAINVERSIONLOOSE",`(${h[p.NUMERICIDENTIFIERLOOSE]})\\.(${h[p.NUMERICIDENTIFIERLOOSE]})\\.(${h[p.NUMERICIDENTIFIERLOOSE]})`);$("PRERELEASEIDENTIFIER",`(?:${h[p.NONNUMERICIDENTIFIER]}|${h[p.NUMERICIDENTIFIER]})`);$("PRERELEASEIDENTIFIERLOOSE",`(?:${h[p.NONNUMERICIDENTIFIER]}|${h[p.NUMERICIDENTIFIERLOOSE]})`);$("PRERELEASE",`(?:-(${h[p.PRERELEASEIDENTIFIER]}(?:\\.${h[p.PRERELEASEIDENTIFIER]})*))`);$("PRERELEASELOOSE",`(?:-?(${h[p.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${h[p.PRERELEASEIDENTIFIERLOOSE]})*))`);$("BUILDIDENTIFIER",`${we}+`);$("BUILD",`(?:\\+(${h[p.BUILDIDENTIFIER]}(?:\\.${h[p.BUILDIDENTIFIER]})*))`);$("FULLPLAIN",`v?${h[p.MAINVERSION]}${h[p.PRERELEASE]}?${h[p.BUILD]}?`);$("FULL",`^${h[p.FULLPLAIN]}$`);$("LOOSEPLAIN",`[v=\\s]*${h[p.MAINVERSIONLOOSE]}${h[p.PRERELEASELOOSE]}?${h[p.BUILD]}?`);$("LOOSE",`^${h[p.LOOSEPLAIN]}$`);$("GTLT","((?:<|>)?=?)");$("XRANGEIDENTIFIERLOOSE",`${h[p.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);$("XRANGEIDENTIFIER",`${h[p.NUMERICIDENTIFIER]}|x|X|\\*`);$("XRANGEPLAIN",`[v=\\s]*(${h[p.XRANGEIDENTIFIER]})(?:\\.(${h[p.XRANGEIDENTIFIER]})(?:\\.(${h[p.XRANGEIDENTIFIER]})(?:${h[p.PRERELEASE]})?${h[p.BUILD]}?)?)?`);$("XRANGEPLAINLOOSE",`[v=\\s]*(${h[p.XRANGEIDENTIFIERLOOSE]})(?:\\.(${h[p.XRANGEIDENTIFIERLOOSE]})(?:\\.(${h[p.XRANGEIDENTIFIERLOOSE]})(?:${h[p.PRERELEASELOOSE]})?${h[p.BUILD]}?)?)?`);$("XRANGE",`^${h[p.GTLT]}\\s*${h[p.XRANGEPLAIN]}$`);$("XRANGELOOSE",`^${h[p.GTLT]}\\s*${h[p.XRANGEPLAINLOOSE]}$`);$("COERCEPLAIN",`(^|[^\\d])(\\d{1,${ge}})(?:\\.(\\d{1,${ge}}))?(?:\\.(\\d{1,${ge}}))?`);$("COERCE",`${h[p.COERCEPLAIN]}(?:$|[^\\d])`);$("COERCEFULL",h[p.COERCEPLAIN]+`(?:${h[p.PRERELEASE]})?(?:${h[p.BUILD]})?(?:$|[^\\d])`);$("COERCERTL",h[p.COERCE],!0);$("COERCERTLFULL",h[p.COERCEFULL],!0);$("LONETILDE","(?:~>?)");$("TILDETRIM",`(\\s*)${h[p.LONETILDE]}\\s+`,!0);q.tildeTrimReplace="$1~";$("TILDE",`^${h[p.LONETILDE]}${h[p.XRANGEPLAIN]}$`);$("TILDELOOSE",`^${h[p.LONETILDE]}${h[p.XRANGEPLAINLOOSE]}$`);$("LONECARET","(?:\\^)");$("CARETTRIM",`(\\s*)${h[p.LONECARET]}\\s+`,!0);q.caretTrimReplace="$1^";$("CARET",`^${h[p.LONECARET]}${h[p.XRANGEPLAIN]}$`);$("CARETLOOSE",`^${h[p.LONECARET]}${h[p.XRANGEPLAINLOOSE]}$`);$("COMPARATORLOOSE",`^${h[p.GTLT]}\\s*(${h[p.LOOSEPLAIN]})$|^$`);$("COMPARATOR",`^${h[p.GTLT]}\\s*(${h[p.FULLPLAIN]})$|^$`);$("COMPARATORTRIM",`(\\s*)${h[p.GTLT]}\\s*(${h[p.LOOSEPLAIN]}|${h[p.XRANGEPLAIN]})`,!0);q.comparatorTrimReplace="$1$2$3";$("HYPHENRANGE",`^\\s*(${h[p.XRANGEPLAIN]})\\s+-\\s+(${h[p.XRANGEPLAIN]})\\s*$`);$("HYPHENRANGELOOSE",`^\\s*(${h[p.XRANGEPLAINLOOSE]})\\s+-\\s+(${h[p.XRANGEPLAINLOOSE]})\\s*$`);$("STAR","(<|>)?=?\\s*\\*");$("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");$("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var z=E((Pa,kr)=>{"use strict";var Js=Object.freeze({loose:!0}),Ws=Object.freeze({}),Ks=r=>r?typeof r!="object"?Js:r:Ws;kr.exports=Ks});var Ie=E((Fa,Ur)=>{"use strict";var _r=/^[0-9]+$/,br=(r,e)=>{if(typeof r=="number"&&typeof e=="number")return r===e?0:r<e?-1:1;let t=_r.test(r),n=_r.test(e);return t&&n&&(r=+r,e=+e),r===e?0:t&&!n?-1:n&&!t?1:r<e?-1:1},Zs=(r,e)=>br(e,r);Ur.exports={compareIdentifiers:br,rcompareIdentifiers:Zs}});var S=E((Da,Xr)=>{"use strict";var B=G(),{MAX_LENGTH:Gr,MAX_SAFE_INTEGER:J}=k(),{safeRe:W,t:K}=_(),Qs=z(),{compareIdentifiers:Se}=Ie(),ei=(r,e)=>{let t=e.split(".");if(t.length>r.length)return!1;for(let n=0;n<t.length;n++)if(Se(r[n],t[n])!==0)return!1;return!0},Ne=class r{constructor(e,t){if(t=Qs(t),e instanceof r){if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>Gr)throw new TypeError(`version is longer than ${Gr} characters`);B("SemVer",e,t),this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease;let n=e.trim().match(t.loose?W[K.LOOSE]:W[K.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>J||this.major<0)throw new TypeError("Invalid major version");if(this.minor>J||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>J||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let i=+s;if(i>=0&&i<J)return i}return s}):this.prerelease=[],this.build=n[5]?n[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(e){if(B("SemVer.compare",this.version,this.options,e),!(e instanceof r)){if(typeof e=="string"&&e===this.version)return 0;e=new r(e,this.options)}return e.version===this.version?0:this.compareMain(e)||this.comparePre(e)}compareMain(e){return e instanceof r||(e=new r(e,this.options)),this.major<e.major?-1:this.major>e.major?1:this.minor<e.minor?-1:this.minor>e.minor?1:this.patch<e.patch?-1:this.patch>e.patch?1:0}comparePre(e){if(e instanceof r||(e=new r(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let t=0;do{let n=this.prerelease[t],s=e.prerelease[t];if(B("prerelease compare",t,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return Se(n,s)}while(++t)}compareBuild(e){e instanceof r||(e=new r(e,this.options));let t=0;do{let n=this.build[t],s=e.build[t];if(B("build compare",t,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return Se(n,s)}while(++t)}inc(e,t,n){if(e.startsWith("pre")){if(!t&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(t){let s=`-${t}`.match(this.options.loose?W[K.PRERELEASELOOSE]:W[K.PRERELEASE]);if(!s||s[1]!==t)throw new Error(`invalid identifier: ${t}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",t,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",t,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",t,n),this.inc("pre",t,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",t,n),this.inc("pre",t,n);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 s=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[s];else{let i=this.prerelease.length;for(;--i>=0;)typeof this.prerelease[i]=="number"&&(this.prerelease[i]++,i=-2);if(i===-1){if(t===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(s)}}if(t){let i=[t,s];if(n===!1&&(i=[t]),ei(this.prerelease,t)){let o=this.prerelease[t.split(".").length];isNaN(o)&&(this.prerelease=i)}else this.prerelease=i}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};Xr.exports=Ne});var x=E((ja,Vr)=>{"use strict";var Hr=S(),ri=(r,e,t=!1)=>{if(r instanceof Hr)return r;try{return new Hr(r,e)}catch(n){if(!t)return null;throw n}};Vr.exports=ri});var Yr=E((ka,Mr)=>{"use strict";var ti=x(),ni=(r,e)=>{let t=ti(r,e);return t?t.version:null};Mr.exports=ni});var Br=E((_a,zr)=>{"use strict";var si=x(),ii=(r,e)=>{let t=si(r.trim().replace(/^[=v]+/,""),e);return t?t.version:null};zr.exports=ii});var Kr=E((ba,Wr)=>{"use strict";var Jr=S(),oi=(r,e,t,n,s)=>{typeof t=="string"&&(s=n,n=t,t=void 0);try{return new Jr(r instanceof Jr?r.version:r,t).inc(e,n,s).version}catch{return null}};Wr.exports=oi});var et=E((Ua,Qr)=>{"use strict";var Zr=x(),ci=(r,e)=>{let t=Zr(r,null,!0),n=Zr(e,null,!0),s=t.compare(n);if(s===0)return null;let i=s>0,o=i?t:n,c=i?n:t,l=!!o.prerelease.length;if(!!c.prerelease.length&&!l){if(!c.patch&&!c.minor)return"major";if(c.compareMain(o)===0)return c.minor&&!c.patch?"minor":"patch"}let d=l?"pre":"";return t.major!==n.major?d+"major":t.minor!==n.minor?d+"minor":t.patch!==n.patch?d+"patch":"prerelease"};Qr.exports=ci});var tt=E((Ga,rt)=>{"use strict";var ai=S(),ui=(r,e)=>new ai(r,e).major;rt.exports=ui});var st=E((Xa,nt)=>{"use strict";var li=S(),fi=(r,e)=>new li(r,e).minor;nt.exports=fi});var ot=E((Ha,it)=>{"use strict";var hi=S(),pi=(r,e)=>new hi(r,e).patch;it.exports=pi});var at=E((Va,ct)=>{"use strict";var Ei=x(),mi=(r,e)=>{let t=Ei(r,e);return t&&t.prerelease.length?t.prerelease:null};ct.exports=mi});var y=E((Ma,lt)=>{"use strict";var ut=S(),di=(r,e,t)=>new ut(r,t).compare(new ut(e,t));lt.exports=di});var ht=E((Ya,ft)=>{"use strict";var $i=y(),Ri=(r,e,t)=>$i(e,r,t);ft.exports=Ri});var Et=E((za,pt)=>{"use strict";var gi=y(),wi=(r,e)=>gi(r,e,!0);pt.exports=wi});var Z=E((Ba,dt)=>{"use strict";var mt=S(),Ii=(r,e,t)=>{let n=new mt(r,t),s=new mt(e,t);return n.compare(s)||n.compareBuild(s)};dt.exports=Ii});var Rt=E((Ja,$t)=>{"use strict";var Si=Z(),Ni=(r,e)=>r.sort((t,n)=>Si(t,n,e));$t.exports=Ni});var wt=E((Wa,gt)=>{"use strict";var Ti=Z(),yi=(r,e)=>r.sort((t,n)=>Ti(n,t,e));gt.exports=yi});var X=E((Ka,It)=>{"use strict";var Ai=y(),Li=(r,e,t)=>Ai(r,e,t)>0;It.exports=Li});var Q=E((Za,St)=>{"use strict";var Oi=y(),qi=(r,e,t)=>Oi(r,e,t)<0;St.exports=qi});var Te=E((Qa,Nt)=>{"use strict";var vi=y(),xi=(r,e,t)=>vi(r,e,t)===0;Nt.exports=xi});var ye=E((eu,Tt)=>{"use strict";var Ci=y(),Pi=(r,e,t)=>Ci(r,e,t)!==0;Tt.exports=Pi});var ee=E((ru,yt)=>{"use strict";var Fi=y(),Di=(r,e,t)=>Fi(r,e,t)>=0;yt.exports=Di});var re=E((tu,At)=>{"use strict";var ji=y(),ki=(r,e,t)=>ji(r,e,t)<=0;At.exports=ki});var Ae=E((nu,Lt)=>{"use strict";var _i=Te(),bi=ye(),Ui=X(),Gi=ee(),Xi=Q(),Hi=re(),Vi=(r,e,t,n)=>{switch(e){case"===":return typeof r=="object"&&(r=r.version),typeof t=="object"&&(t=t.version),r===t;case"!==":return typeof r=="object"&&(r=r.version),typeof t=="object"&&(t=t.version),r!==t;case"":case"=":case"==":return _i(r,t,n);case"!=":return bi(r,t,n);case">":return Ui(r,t,n);case">=":return Gi(r,t,n);case"<":return Xi(r,t,n);case"<=":return Hi(r,t,n);default:throw new TypeError(`Invalid operator: ${e}`)}};Lt.exports=Vi});var qt=E((su,Ot)=>{"use strict";var Mi=S(),Yi=x(),{safeRe:te,t:ne}=_(),zi=(r,e)=>{if(r instanceof Mi)return r;if(typeof r=="number"&&(r=String(r)),typeof r!="string")return null;e=e||{};let t=null;if(!e.rtl)t=r.match(e.includePrerelease?te[ne.COERCEFULL]:te[ne.COERCE]);else{let l=e.includePrerelease?te[ne.COERCERTLFULL]:te[ne.COERCERTL],a;for(;(a=l.exec(r))&&(!t||t.index+t[0].length!==r.length);)(!t||a.index+a[0].length!==t.index+t[0].length)&&(t=a),l.lastIndex=a.index+a[1].length+a[2].length;l.lastIndex=-1}if(t===null)return null;let n=t[2],s=t[3]||"0",i=t[4]||"0",o=e.includePrerelease&&t[5]?`-${t[5]}`:"",c=e.includePrerelease&&t[6]?`+${t[6]}`:"";return Yi(`${n}.${s}.${i}${o}${c}`,e)};Ot.exports=zi});var xt=E((iu,vt)=>{"use strict";var Bi=x(),Ji=k(),Wi=S(),Ki=(r,e,t)=>{if(!Ji.RELEASE_TYPES.includes(e))return null;let n=Zi(r,t);return n&&Qi(n,e)},Zi=(r,e)=>{let t=r instanceof Wi?r.version:r;return Bi(t,e)},Qi=(r,e)=>{if(eo(e))return r.version;switch(r.prerelease=[],e){case"major":r.minor=0,r.patch=0;break;case"minor":r.patch=0;break}return r.format()},eo=r=>r.startsWith("pre");vt.exports=Ki});var Pt=E((ou,Ct)=>{"use strict";var Le=class{constructor(){this.max=1e3,this.map=new Map}get(e){let t=this.map.get(e);if(t!==void 0)return this.map.delete(e),this.map.set(e,t),t}delete(e){return this.map.delete(e)}set(e,t){if(!this.delete(e)&&t!==void 0){if(this.map.size>=this.max){let s=this.map.keys().next().value;this.delete(s)}this.map.set(e,t)}return this}};Ct.exports=Le});var A=E((cu,kt)=>{"use strict";var ro=/\s+/g,Oe=class r{constructor(e,t){if(t=no(t),e instanceof r)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new r(e.raw,t);if(e instanceof qe)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e.trim().replace(ro," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(s=>!Dt(s[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let s of this.set)if(s.length===1&&ho(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e<this.set.length;e++){e>0&&(this.formatted+="||");let t=this.set[e];for(let n=0;n<t.length;n++)n>0&&(this.formatted+=" "),this.formatted+=t[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){e=e.replace(fo,"");let n=((this.options.includePrerelease&&uo)|(this.options.loose&&lo))+":"+e,s=Ft.get(n);if(s)return s;let i=this.options.loose,o=i?T[N.HYPHENRANGELOOSE]:T[N.HYPHENRANGE];e=e.replace(o,To(this.options.includePrerelease)),R("hyphen replace",e),e=e.replace(T[N.COMPARATORTRIM],oo),R("comparator trim",e),e=e.replace(T[N.TILDETRIM],co),R("tilde trim",e),e=e.replace(T[N.CARETTRIM],ao),R("caret trim",e);let c=e.split(" ").map(u=>po(u,this.options)).join(" ").split(/\s+/).map(u=>No(u,this.options));i&&(c=c.filter(u=>(R("loose invalid filter",u,this.options),!!u.match(T[N.COMPARATORLOOSE])))),R("range list",c);let l=new Map,a=c.map(u=>new qe(u,this.options));for(let u of a){if(Dt(u))return[u];l.set(u.value,u)}l.size>1&&l.has("")&&l.delete("");let d=[...l.values()];return Ft.set(n,d),d}intersects(e,t){if(!(e instanceof r))throw new TypeError("a Range is required");return this.set.some(n=>jt(n,t)&&e.set.some(s=>jt(s,t)&&n.every(i=>s.every(o=>i.intersects(o,t)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new so(e,this.options)}catch{return!1}for(let t=0;t<this.set.length;t++)if(yo(this.set[t],e,this.options))return!0;return!1}};kt.exports=Oe;var to=Pt(),Ft=new to,no=z(),qe=H(),R=G(),so=S(),{safeRe:T,src:io,t:N,comparatorTrimReplace:oo,tildeTrimReplace:co,caretTrimReplace:ao}=_(),{FLAG_INCLUDE_PRERELEASE:uo,FLAG_LOOSE:lo}=k(),fo=new RegExp(io[N.BUILD],"g"),Dt=r=>r.value==="<0.0.0-0",ho=r=>r.value==="",jt=(r,e)=>{let t=!0,n=r.slice(),s=n.pop();for(;t&&n.length;)t=n.every(i=>s.intersects(i,e)),s=n.pop();return t},po=(r,e)=>(r=r.replace(T[N.BUILD],""),R("comp",r,e),r=Ro(r,e),R("caret",r),r=mo(r,e),R("tildes",r),r=wo(r,e),R("xrange",r),r=So(r,e),R("stars",r),r),I=r=>!r||r.toLowerCase()==="x"||r==="*",Eo=(r,e,t)=>I(r)&&!I(e)||I(e)&&t&&!I(t),mo=(r,e)=>r.trim().split(/\s+/).map(t=>$o(t,e)).join(" "),$o=(r,e)=>{let t=e.loose?T[N.TILDELOOSE]:T[N.TILDE],n=e.includePrerelease?"-0":"";return r.replace(t,(s,i,o,c,l)=>{R("tilde",r,s,i,o,c,l);let a;return I(i)?a="":I(o)?a=`>=${i}.0.0${n} <${+i+1}.0.0-0`:I(c)?a=`>=${i}.${o}.0${n} <${i}.${+o+1}.0-0`:l?(R("replaceTilde pr",l),a=`>=${i}.${o}.${c}-${l} <${i}.${+o+1}.0-0`):a=`>=${i}.${o}.${c} <${i}.${+o+1}.0-0`,R("tilde return",a),a})},Ro=(r,e)=>r.trim().split(/\s+/).map(t=>go(t,e)).join(" "),go=(r,e)=>{R("caret",r,e);let t=e.loose?T[N.CARETLOOSE]:T[N.CARET],n=e.includePrerelease?"-0":"";return r.replace(t,(s,i,o,c,l)=>{R("caret",r,s,i,o,c,l);let a;return I(i)?a="":I(o)?a=`>=${i}.0.0${n} <${+i+1}.0.0-0`:I(c)?i==="0"?a=`>=${i}.${o}.0${n} <${i}.${+o+1}.0-0`:a=`>=${i}.${o}.0${n} <${+i+1}.0.0-0`:l?(R("replaceCaret pr",l),i==="0"?o==="0"?a=`>=${i}.${o}.${c}-${l} <${i}.${o}.${+c+1}-0`:a=`>=${i}.${o}.${c}-${l} <${i}.${+o+1}.0-0`:a=`>=${i}.${o}.${c}-${l} <${+i+1}.0.0-0`):(R("no pr"),i==="0"?o==="0"?a=`>=${i}.${o}.${c} <${i}.${o}.${+c+1}-0`:a=`>=${i}.${o}.${c} <${i}.${+o+1}.0-0`:a=`>=${i}.${o}.${c} <${+i+1}.0.0-0`),R("caret return",a),a})},wo=(r,e)=>(R("replaceXRanges",r,e),r.split(/\s+/).map(t=>Io(t,e)).join(" ")),Io=(r,e)=>{r=r.trim();let t=e.loose?T[N.XRANGELOOSE]:T[N.XRANGE];return r.replace(t,(n,s,i,o,c,l)=>{if(R("xRange",r,n,s,i,o,c,l),Eo(i,o,c))return r;let a=I(i),d=a||I(o),u=d||I(c),m=u;return s==="="&&m&&(s=""),l=e.includePrerelease?"-0":"",a?s===">"||s==="<"?n="<0.0.0-0":n="*":s&&m?(d&&(o=0),c=0,s===">"?(s=">=",d?(i=+i+1,o=0,c=0):(o=+o+1,c=0)):s==="<="&&(s="<",d?i=+i+1:o=+o+1),s==="<"&&(l="-0"),n=`${s+i}.${o}.${c}${l}`):d?n=`>=${i}.0.0${l} <${+i+1}.0.0-0`:u&&(n=`>=${i}.${o}.0${l} <${i}.${+o+1}.0-0`),R("xRange return",n),n})},So=(r,e)=>(R("replaceStars",r,e),r.trim().replace(T[N.STAR],"")),No=(r,e)=>(R("replaceGTE0",r,e),r.trim().replace(T[e.includePrerelease?N.GTE0PRE:N.GTE0],"")),To=r=>(e,t,n,s,i,o,c,l,a,d,u,m)=>(I(n)?t="":I(s)?t=`>=${n}.0.0${r?"-0":""}`:I(i)?t=`>=${n}.${s}.0${r?"-0":""}`:o?t=`>=${t}`:t=`>=${t}${r?"-0":""}`,I(a)?l="":I(d)?l=`<${+a+1}.0.0-0`:I(u)?l=`<${a}.${+d+1}.0-0`:m?l=`<=${a}.${d}.${u}-${m}`:r?l=`<${a}.${d}.${+u+1}-0`:l=`<=${l}`,`${t} ${l}`.trim()),yo=(r,e,t)=>{for(let n=0;n<r.length;n++)if(!r[n].test(e))return!1;if(e.prerelease.length&&!t.includePrerelease){for(let n=0;n<r.length;n++)if(R(r[n].semver),r[n].semver!==qe.ANY&&r[n].semver.prerelease.length>0){let s=r[n].semver;if(s.major===e.major&&s.minor===e.minor&&s.patch===e.patch)return!0}return!1}return!0}});var H=E((au,Ht)=>{"use strict";var V=Symbol("SemVer ANY"),Ce=class r{static get ANY(){return V}constructor(e,t){if(t=_t(t),e instanceof r){if(e.loose===!!t.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),xe("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===V?this.value="":this.value=this.operator+this.semver.version,xe("comp",this)}parse(e){let t=this.options.loose?bt[Ut.COMPARATORLOOSE]:bt[Ut.COMPARATOR],n=e.match(t);if(!n)throw new TypeError(`Invalid comparator: ${e}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new Gt(n[2],this.options.loose):this.semver=V}toString(){return this.value}test(e){if(xe("Comparator.test",e,this.options.loose),this.semver===V||e===V)return!0;if(typeof e=="string")try{e=new Gt(e,this.options)}catch{return!1}return ve(e,this.operator,this.semver,this.options)}intersects(e,t){if(!(e instanceof r))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new Xt(e.value,t).test(this.value):e.operator===""?e.value===""?!0:new Xt(this.value,t).test(e.semver):(t=_t(t),t.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!t.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||ve(this.semver,"<",e.semver,t)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||ve(this.semver,">",e.semver,t)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};Ht.exports=Ce;var _t=z(),{safeRe:bt,t:Ut}=_(),ve=Ae(),xe=G(),Gt=S(),Xt=A()});var M=E((uu,Vt)=>{"use strict";var Ao=A(),Lo=(r,e,t)=>{try{e=new Ao(e,t)}catch{return!1}return e.test(r)};Vt.exports=Lo});var Yt=E((lu,Mt)=>{"use strict";var Oo=A(),qo=(r,e)=>new Oo(r,e).set.map(t=>t.map(n=>n.value).join(" ").trim().split(" "));Mt.exports=qo});var Bt=E((fu,zt)=>{"use strict";var vo=S(),xo=A(),Co=(r,e,t)=>{let n=null,s=null,i=null;try{i=new xo(e,t)}catch{return null}return r.forEach(o=>{i.test(o)&&(!n||s.compare(o)===-1)&&(n=o,s=new vo(n,t))}),n};zt.exports=Co});var Wt=E((hu,Jt)=>{"use strict";var Po=S(),Fo=A(),Do=(r,e,t)=>{let n=null,s=null,i=null;try{i=new Fo(e,t)}catch{return null}return r.forEach(o=>{i.test(o)&&(!n||s.compare(o)===1)&&(n=o,s=new Po(n,t))}),n};Jt.exports=Do});var Qt=E((pu,Zt)=>{"use strict";var Pe=S(),jo=A(),Kt=X(),ko=(r,e)=>{r=new jo(r,e);let t=new Pe("0.0.0");if(r.test(t)||(t=new Pe("0.0.0-0"),r.test(t)))return t;t=null;for(let n=0;n<r.set.length;++n){let s=r.set[n],i=null;s.forEach(o=>{let c=new Pe(o.semver.version);switch(o.operator){case">":c.prerelease.length===0?c.patch++:c.prerelease.push(0),c.raw=c.format();case"":case">=":(!i||Kt(c,i))&&(i=c);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${o.operator}`)}}),i&&(!t||Kt(t,i))&&(t=i)}return t&&r.test(t)?t:null};Zt.exports=ko});var rn=E((Eu,en)=>{"use strict";var _o=A(),bo=(r,e)=>{try{return new _o(r,e).range||"*"}catch{return null}};en.exports=bo});var se=E((mu,on)=>{"use strict";var Uo=S(),sn=H(),{ANY:Go}=sn,Xo=A(),Ho=M(),tn=X(),nn=Q(),Vo=re(),Mo=ee(),Yo=(r,e,t,n)=>{r=new Uo(r,n),e=new Xo(e,n);let s,i,o,c,l;switch(t){case">":s=tn,i=Vo,o=nn,c=">",l=">=";break;case"<":s=nn,i=Mo,o=tn,c="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Ho(r,e,n))return!1;for(let a=0;a<e.set.length;++a){let d=e.set[a],u=null,m=null;if(d.forEach(f=>{f.semver===Go&&(f=new sn(">=0.0.0")),u=u||f,m=m||f,s(f.semver,u.semver,n)?u=f:o(f.semver,m.semver,n)&&(m=f)}),u.operator===c||u.operator===l||(!m.operator||m.operator===c)&&i(r,m.semver))return!1;if(m.operator===l&&o(r,m.semver))return!1}return!0};on.exports=Yo});var an=E((du,cn)=>{"use strict";var zo=se(),Bo=(r,e,t)=>zo(r,e,">",t);cn.exports=Bo});var ln=E(($u,un)=>{"use strict";var Jo=se(),Wo=(r,e,t)=>Jo(r,e,"<",t);un.exports=Wo});var pn=E((Ru,hn)=>{"use strict";var fn=A(),Ko=(r,e,t)=>(r=new fn(r,t),e=new fn(e,t),r.intersects(e,t));hn.exports=Ko});var mn=E((gu,En)=>{"use strict";var Zo=M(),Qo=y();En.exports=(r,e,t)=>{let n=[],s=null,i=null,o=r.sort((d,u)=>Qo(d,u,t));for(let d of o)Zo(d,e,t)?(i=d,s||(s=d)):(i&&n.push([s,i]),i=null,s=null);s&&n.push([s,null]);let c=[];for(let[d,u]of n)d===u?c.push(d):!u&&d===o[0]?c.push("*"):u?d===o[0]?c.push(`<=${u}`):c.push(`${d} - ${u}`):c.push(`>=${d}`);let l=c.join(" || "),a=typeof e.raw=="string"?e.raw:String(e);return l.length<a.length?l:e}});var In=E((wu,wn)=>{"use strict";var dn=A(),je=H(),{ANY:Fe}=je,De=M(),ke=y(),ec=(r,e,t={})=>{if(r===e)return!0;r=new dn(r,t),e=new dn(e,t);let n=!1;e:for(let s of r.set){for(let i of e.set){let o=tc(s,i,t);if(n=n||o!==null,o)continue e}if(n)return!1}return!0},rc=[new je(">=0.0.0-0")],$n=[new je(">=0.0.0")],tc=(r,e,t)=>{if(r===e)return!0;if(r.length===1&&r[0].semver===Fe){if(e.length===1&&e[0].semver===Fe)return!0;t.includePrerelease?r=rc:r=$n}if(e.length===1&&e[0].semver===Fe){if(t.includePrerelease)return!0;e=$n}let n=new Set,s,i;for(let f of r)f.operator===">"||f.operator===">="?s=Rn(s,f,t):f.operator==="<"||f.operator==="<="?i=gn(i,f,t):n.add(f.semver);if(n.size>1)return null;let o;if(s&&i){if(o=ke(s.semver,i.semver,t),o>0)return null;if(o===0&&(s.operator!==">="||i.operator!=="<="))return null}for(let f of n){if(s&&!De(f,String(s),t)||i&&!De(f,String(i),t))return null;for(let g of e)if(!De(f,String(g),t))return!1;return!0}let c,l,a,d,u=i&&!t.includePrerelease&&i.semver.prerelease.length?i.semver:!1,m=s&&!t.includePrerelease&&s.semver.prerelease.length?s.semver:!1;u&&u.prerelease.length===1&&i.operator==="<"&&u.prerelease[0]===0&&(u=!1);for(let f of e){if(d=d||f.operator===">"||f.operator===">=",a=a||f.operator==="<"||f.operator==="<=",s){if(m&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===m.major&&f.semver.minor===m.minor&&f.semver.patch===m.patch&&(m=!1),f.operator===">"||f.operator===">="){if(c=Rn(s,f,t),c===f&&c!==s)return!1}else if(s.operator===">="&&!f.test(s.semver))return!1}if(i){if(u&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===u.major&&f.semver.minor===u.minor&&f.semver.patch===u.patch&&(u=!1),f.operator==="<"||f.operator==="<="){if(l=gn(i,f,t),l===f&&l!==i)return!1}else if(i.operator==="<="&&!f.test(i.semver))return!1}if(!f.operator&&(i||s)&&o!==0)return!1}return!(s&&a&&!i&&o!==0||i&&d&&!s&&o!==0||m||u)},Rn=(r,e,t)=>{if(!r)return e;let n=ke(r.semver,e.semver,t);return n>0?r:n<0||e.operator===">"&&r.operator===">="?e:r},gn=(r,e,t)=>{if(!r)return e;let n=ke(r.semver,e.semver,t);return n<0?r:n>0||e.operator==="<"&&r.operator==="<="?e:r};wn.exports=ec});var yn=E((Iu,Tn)=>{"use strict";var _e=_(),Sn=k(),nc=S(),Nn=Ie(),sc=x(),ic=Yr(),oc=Br(),cc=Kr(),ac=et(),uc=tt(),lc=st(),fc=ot(),hc=at(),pc=y(),Ec=ht(),mc=Et(),dc=Z(),$c=Rt(),Rc=wt(),gc=X(),wc=Q(),Ic=Te(),Sc=ye(),Nc=ee(),Tc=re(),yc=Ae(),Ac=qt(),Lc=xt(),Oc=H(),qc=A(),vc=M(),xc=Yt(),Cc=Bt(),Pc=Wt(),Fc=Qt(),Dc=rn(),jc=se(),kc=an(),_c=ln(),bc=pn(),Uc=mn(),Gc=In();Tn.exports={parse:sc,valid:ic,clean:oc,inc:cc,diff:ac,major:uc,minor:lc,patch:fc,prerelease:hc,compare:pc,rcompare:Ec,compareLoose:mc,compareBuild:dc,sort:$c,rsort:Rc,gt:gc,lt:wc,eq:Ic,neq:Sc,gte:Nc,lte:Tc,cmp:yc,coerce:Ac,truncate:Lc,Comparator:Oc,Range:qc,satisfies:vc,toComparators:xc,maxSatisfying:Cc,minSatisfying:Pc,minVersion:Fc,validRange:Dc,outside:jc,gtr:kc,ltr:_c,intersects:bc,simplifyRange:Uc,subset:Gc,SemVer:nc,re:_e.re,src:_e.src,tokens:_e.t,SEMVER_SPEC_VERSION:Sn.SEMVER_SPEC_VERSION,RELEASE_TYPES:Sn.RELEASE_TYPES,compareIdentifiers:Nn.compareIdentifiers,rcompareIdentifiers:Nn.rcompareIdentifiers}});var kn=E((Su,jn)=>{var C=require("fs"),L=require("path"),Ln=Pr(),O=yn(),{DEFAULT_API_URL:Xc}=ue(),On=["dependencies","devDependencies","optionalDependencies","peerDependencies"];function be(r){let e=typeof r=="string"&&r.match(/^((?:@[a-z0-9][a-z0-9._-]*\/)?[a-z0-9][a-z0-9._-]*)(?:@([^\r\n]+))?$/);if(!e)throw new Error(`Invalid npm dependency: ${String(r)}`);return{name:e[1],version:e[2]}}function Ue(r){let e=new Map;for(let t of r){let{name:n,version:s}=be(t),i=e.get(n);e.set(n,i&&s?qn(n,i,s):s||i)}return e}function qn(r,e,t){if(e===t)return e;let n=O.validRange(e),s=O.validRange(t);if(n&&s)try{if(O.subset(s,n))return t;if(O.subset(n,s))return e}catch{}throw new Error(`Conflicting registry versions for ${r}: ${e} and ${t}`)}function Hc(r,e){let t=typeof r=="string"&&O.validRange(r),n=O.validRange(e);if(!t||!n)return!1;try{return O.subset(t,n)}catch{return!1}}function oe(r,e){if(Hc(r,e))return"satisfied";let t=typeof r=="string"&&O.validRange(r),n=O.validRange(e);if(!t||!n)return"incomparable";try{let s=O.minVersion(t),i=O.minVersion(n);return!s||!i?"incomparable":O.lt(s,i)?"lower":"newer"}catch{return"incomparable"}}function ie(r,e){let t=On.find(n=>Object.hasOwn(r[n]||{},e));return t?{section:t,existing:r[t][e]}:null}function vn(r,e){let t=Ue(e);if(t.size===0)return;let n=L.join(r,"package.json"),s=JSON.parse(C.readFileSync(n,"utf8"));for(let[i,o]of t){let c=ie(s,i),l=c?.section||"dependencies";s[l]||={};let a=c?.existing;s[l][i]=a===void 0?o||"latest":o&&oe(a,o)==="lower"?o:a}C.writeFileSync(n,`${JSON.stringify(s,null,2)}
3
- `)}function ce(r){let e=[["pnpm-lock.yaml","pnpm"],["yarn.lock","yarn"],["bun.lock","bun"],["bun.lockb","bun"],["package-lock.json","npm"],["npm-shrinkwrap.json","npm"]];for(let t=L.resolve(r);;t=L.dirname(t)){let n=L.join(t,"package.json");if(C.existsSync(n)){let s=JSON.parse(C.readFileSync(n,"utf8")),i=String(s.packageManager||"").split("@")[0];if(["npm","pnpm","yarn","bun"].includes(i))return i}for(let[s,i]of e)if(C.existsSync(L.join(t,s)))return i;if(L.dirname(t)===t)return"npm"}}var An={npm:"npx",pnpm:"pnpm exec",yarn:"yarn",bun:"bunx"};function xn(r,e=process.cwd()){let t;try{t=ce(e)}catch{t="npm"}return`${An[t]||An.npm} frontfriend ${r}`}function Vc(r,e=process.cwd()){let t=null;try{t=r?new URL(r).origin:null}catch{t=null}return xn(t&&t!==new URL(Xc).origin?`login --api-url ${t}`:"login",e)}function Cn(r){return JSON.parse(C.readFileSync(L.join(r,"package.json"),"utf8"))}function Ge(r,e){let t=Ue(e);if(t.size===0)return[];let n=Cn(r),s=[];for(let[i,o]of t){let c=ie(n,i);c&&(!o||oe(c.existing,o)!=="lower")||s.push(o?`${i}@${o}`:i)}return s}function Mc(r,e){let t=e.filter(u=>u.required),n=Ue(t.flatMap(u=>u.dependencies)),s=(u,m)=>m.filter(f=>f.dependencies.some(g=>be(g).name===u)).map(f=>f.component).filter(Boolean),i=e.filter(u=>!u.required);if(n.size===0&&i.length===0)return{missing:[],kept:[],repair:[]};let o=Cn(r),c=[],l=[];for(let[u,m]of n){let f=ie(o,u);if(!f){c.push(m?`${u}@${m}`:u);continue}if(!m)continue;let g=oe(f.existing,m);g==="lower"?c.push(`${u}@${m}`):g!=="satisfied"&&l.push({name:u,current:f.existing,declared:m,components:s(u,t)})}let a=new Map;for(let u of i.flatMap(m=>m.dependencies)){let{name:m,version:f}=be(u);if(n.has(m)||ie(o,m))continue;let g=a.get(m),P=f||g?.version;if(g?.version&&f&&g.version!==f)try{P=qn(m,g.version,f)}catch{P=g.version}a.set(m,{version:P})}let d=[...a].map(([u,{version:m}])=>({request:m?`${u}@${m}`:u,components:s(u,i)}));return{missing:c,kept:l,repair:d}}function Pn(r,e){return[r==="npm"?"install":"add",...e]}function Yc(r){return/^[\w@/.:^~=+-]+$/.test(r)?r:`'${r.replace(/'/g,"'\\''")}'`}function Fn(r,e){let t=ce(r);return[t,...Pn(t,e)].map(Yc).join(" ")}function Dn(r,e,{stdio:t="inherit"}={}){let n=Ge(r,e);if(n.length===0)return;let s=ce(r),i=Ln.sync(s,Pn(s,n),{cwd:r,stdio:t});if(i.error||i.status!==0)throw vn(r,e),i.error||new Error(`${s} dependency installation failed with status ${i.status}. Dependencies were saved; run ${s} install.`)}function zc(r,e,{install:t=!0,stdio:n="inherit",log:s=console.log}={}){let i=Ge(r,e);if(i.length===0)return{missing:i,command:null,installed:!1};let o=Fn(r,i);if(!t)return s(`\u{1F4E6} Component dependencies missing from package.json. Install them with:
4
- ${o}`),{missing:i,command:o,installed:!1};s(`\u{1F4E6} Installing component dependencies: ${o}`);try{return Dn(r,i,{stdio:n}),{missing:i,command:o,installed:!0}}catch(c){return s(`\u26A0\uFE0F Component dependencies were not installed: ${c.message}
1
+ var E=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports);var ze=E((Ia,Ye)=>{"use strict";var Ve="https://app.v4.frontfriend.dev",Me="https://app.frontfriend.dev";function Kn(r){if(new URL(r).origin===Ve)throw Object.assign(new Error(`The API origin ${Ve} has moved to ${Me}. Update api-url in frontfriend.config.js and the agent installation, then run frontfriend login --api-url ${Me}. Credentials were not sent or forwarded.`),{code:"FF_API_ORIGIN_RETIRED"})}Ye.exports={assertCurrentApiOrigin:Kn}});var Je=E((Sa,Be)=>{var w=require("fs");function Zn(r){try{let e=w.readFileSync(r,"utf8");return JSON.parse(e)}catch(e){if(e.code==="ENOENT")return null;throw e}}function Qn(r){try{return w.readFileSync(r,"utf8").replace(/^\uFEFF/,"")}catch(e){if(e.code==="ENOENT")return null;throw e}}function es(r,e,t=2){let n=JSON.stringify(e,null,t);w.writeFileSync(r,n,"utf8")}function rs(r,e){w.writeFileSync(r,e,"utf8")}function ts(r,e){if(e==null||typeof e=="object"&&Object.keys(e).length===0||Array.isArray(e)&&e.length===0){let n=`module.exports = ${Array.isArray(e)?"[]":"{}"};`;w.writeFileSync(r,n,"utf8")}else{let t=`module.exports = ${JSON.stringify(e,null,2)};`;w.writeFileSync(r,t,"utf8")}}function ns(r){return w.existsSync(r)}function ss(r){w.mkdirSync(r,{recursive:!0})}function is(r){w.rmSync(r,{recursive:!0,force:!0})}function os(r){w.rmSync(r,{force:!0})}function cs(r,e){w.mkdirSync(require("path").dirname(r),{recursive:!0,mode:448});let t=`${r}.${process.pid}.${Date.now()}.tmp`;try{w.writeFileSync(t,`${JSON.stringify(e,null,2)}
2
+ `,{mode:384}),w.renameSync(t,r);try{w.chmodSync(r,384)}catch{}}finally{w.rmSync(t,{force:!0})}}async function as(r,e,t){w.mkdirSync(require("path").dirname(r),{recursive:!0,mode:448});let n=`${r}.lock`,s=Date.now()+2e4,i;for(;i===void 0;)try{i=w.openSync(n,"wx",384),w.writeFileSync(i,String(process.pid))}catch(o){if(o.code!=="EEXIST")throw o;try{let c=Number(w.readFileSync(n,"utf8"));if(Number.isInteger(c)&&c>0)try{process.kill(c,0)}catch(l){if(l.code==="ESRCH"){w.unlinkSync(n);continue}}}catch(c){if(c.code==="ENOENT")continue}if(Date.now()>=s)throw t();await new Promise(c=>setTimeout(c,50))}try{return await e()}finally{w.closeSync(i),w.unlinkSync(n)}}Be.exports={writePrivateJsonFileAtomic:cs,withPrivateFileLock:as,readJsonFileSafe:Zn,readFileSafe:Qn,writeJsonFile:es,writeTextFile:rs,writeModuleExportsFile:ts,fileExists:ns,ensureDirectoryExists:ss,removeDirectory:is,removeFile:os}});var ue=E((Na,We)=>{var us="https://app.frontfriend.dev",ls=".cache/frontfriend",fs={JS:["tokens.js","variables.js","semanticVariables.js","semanticDarkVariables.js","keyframes.js","animations.js","safelist.js","custom.js"],JSON:["fonts.json","icons.json","components-config.json","iconLibrary.json","version.json","versionMetadata.json","metadata.json","base.json","nativeTokens.json"]},hs={FF_ID:"FF_ID",FF_API_URL:"FF_API_URL",FF_AUTH_TOKEN:"FF_AUTH_TOKEN",FF_MACHINE_TOKEN:"FRONTFRIEND_MACHINE_TOKEN"};function ps(r){if(!r)return null;try{let e=new URL(r);return e.hostname.startsWith("app.")?`${e.protocol}//${e.hostname.replace(/^app\./,"registry.")}`:null}catch{return null}}We.exports={DEFAULT_API_URL:us,CACHE_DIR_NAME:ls,CACHE_TTL_DAYS:7,CACHE_TTL_MS:6048e5,CACHE_FILES:fs,ENV_VARS:hs,deriveRegistryFromApiUrl:ps}});var rr=E((Ta,er)=>{er.exports=Qe;Qe.sync=ds;var Ke=require("fs");function Es(r,e){var t=e.pathExt!==void 0?e.pathExt:process.env.PATHEXT;if(!t||(t=t.split(";"),t.indexOf("")!==-1))return!0;for(var n=0;n<t.length;n++){var s=t[n].toLowerCase();if(s&&r.substr(-s.length).toLowerCase()===s)return!0}return!1}function Ze(r,e,t){return!r.isSymbolicLink()&&!r.isFile()?!1:Es(e,t)}function Qe(r,e,t){Ke.stat(r,function(n,s){t(n,n?!1:Ze(s,r,e))})}function ds(r,e){return Ze(Ke.statSync(r),r,e)}});var or=E((Aa,ir)=>{ir.exports=nr;nr.sync=ms;var tr=require("fs");function nr(r,e,t){tr.stat(r,function(n,s){t(n,n?!1:sr(s,e))})}function ms(r,e){return sr(tr.statSync(r),e)}function sr(r,e){return r.isFile()&&$s(r,e)}function $s(r,e){var t=r.mode,n=r.uid,s=r.gid,i=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),o=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),c=parseInt("100",8),l=parseInt("010",8),a=parseInt("001",8),m=c|l,u=t&a||t&l&&s===o||t&c&&n===i||t&m&&i===0;return u}});var ar=E((Oa,cr)=>{var ya=require("fs"),Y;process.platform==="win32"||global.TESTING_WINDOWS?Y=rr():Y=or();cr.exports=le;le.sync=gs;function le(r,e,t){if(typeof e=="function"&&(t=e,e={}),!t){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,s){le(r,e||{},function(i,o){i?s(i):n(o)})})}Y(r,e||{},function(n,s){n&&(n.code==="EACCES"||e&&e.ignoreErrors)&&(n=null,s=!1),t(n,s)})}function gs(r,e){try{return Y.sync(r,e||{})}catch(t){if(e&&e.ignoreErrors||t.code==="EACCES")return!1;throw t}}});var dr=E((La,Er)=>{var D=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",ur=require("path"),Rs=D?";":":",lr=ar(),fr=r=>Object.assign(new Error(`not found: ${r}`),{code:"ENOENT"}),hr=(r,e)=>{let t=e.colon||Rs,n=r.match(/\//)||D&&r.match(/\\/)?[""]:[...D?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(t)],s=D?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=D?s.split(t):[""];return D&&r.indexOf(".")!==-1&&i[0]!==""&&i.unshift(""),{pathEnv:n,pathExt:i,pathExtExe:s}},pr=(r,e,t)=>{typeof e=="function"&&(t=e,e={}),e||(e={});let{pathEnv:n,pathExt:s,pathExtExe:i}=hr(r,e),o=[],c=a=>new Promise((m,u)=>{if(a===n.length)return e.all&&o.length?m(o):u(fr(r));let d=n[a],f=/^".*"$/.test(d)?d.slice(1,-1):d,R=ur.join(f,r),P=!f&&/^\.[\\\/]/.test(r)?r.slice(0,2)+R:R;m(l(P,a,0))}),l=(a,m,u)=>new Promise((d,f)=>{if(u===s.length)return d(c(m+1));let R=s[u];lr(a+R,{pathExt:i},(P,Wn)=>{if(!P&&Wn)if(e.all)o.push(a+R);else return d(a+R);return d(l(a,m,u+1))})});return t?c(0).then(a=>t(null,a),t):c(0)},ws=(r,e)=>{e=e||{};let{pathEnv:t,pathExt:n,pathExtExe:s}=hr(r,e),i=[];for(let o=0;o<t.length;o++){let c=t[o],l=/^".*"$/.test(c)?c.slice(1,-1):c,a=ur.join(l,r),m=!l&&/^\.[\\\/]/.test(r)?r.slice(0,2)+a:a;for(let u=0;u<n.length;u++){let d=m+n[u];try{if(lr.sync(d,{pathExt:s}))if(e.all)i.push(d);else return d}catch{}}}if(e.all&&i.length)return i;if(e.nothrow)return null;throw fr(r)};Er.exports=pr;pr.sync=ws});var $r=E((qa,fe)=>{"use strict";var mr=(r={})=>{let e=r.env||process.env;return(r.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};fe.exports=mr;fe.exports.default=mr});var Ir=E((va,wr)=>{"use strict";var gr=require("path"),Is=dr(),Ss=$r();function Rr(r,e){let t=r.options.env||process.env,n=process.cwd(),s=r.options.cwd!=null,i=s&&process.chdir!==void 0&&!process.chdir.disabled;if(i)try{process.chdir(r.options.cwd)}catch{}let o;try{o=Is.sync(r.command,{path:t[Ss({env:t})],pathExt:e?gr.delimiter:void 0})}catch{}finally{i&&process.chdir(n)}return o&&(o=gr.resolve(s?r.options.cwd:"",o)),o}function Ns(r){return Rr(r)||Rr(r,!0)}wr.exports=Ns});var Sr=E((xa,pe)=>{"use strict";var he=/([()\][%!^"`<>&|;, *?])/g;function Ts(r){return r=r.replace(he,"^$1"),r}function As(r,e){return r=`${r}`,r=r.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),r=r.replace(/(?=(\\+?)?)\1$/,"$1$1"),r=`"${r}"`,r=r.replace(he,"^$1"),e&&(r=r.replace(he,"^$1")),r}pe.exports.command=Ts;pe.exports.argument=As});var Tr=E((Ca,Nr)=>{"use strict";Nr.exports=/^#!(.*)/});var yr=E((Pa,Ar)=>{"use strict";var ys=Tr();Ar.exports=(r="")=>{let e=r.match(ys);if(!e)return null;let[t,n]=e[0].replace(/#! ?/,"").split(" "),s=t.split("/").pop();return s==="env"?n:n?`${s} ${n}`:s}});var Lr=E((Fa,Or)=>{"use strict";var Ee=require("fs"),Os=yr();function Ls(r){let t=Buffer.alloc(150),n;try{n=Ee.openSync(r,"r"),Ee.readSync(n,t,0,150,0),Ee.closeSync(n)}catch{}return Os(t.toString())}Or.exports=Ls});var Cr=E((Da,xr)=>{"use strict";var qs=require("path"),qr=Ir(),vr=Sr(),vs=Lr(),xs=process.platform==="win32",Cs=/\.(?:com|exe)$/i,Ps=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Fs(r){r.file=qr(r);let e=r.file&&vs(r.file);return e?(r.args.unshift(r.file),r.command=e,qr(r)):r.file}function Ds(r){if(!xs)return r;let e=Fs(r),t=!Cs.test(e);if(r.options.forceShell||t){let n=Ps.test(e);r.command=qs.normalize(r.command),r.command=vr.command(r.command),r.args=r.args.map(i=>vr.argument(i,n));let s=[r.command].concat(r.args).join(" ");r.args=["/d","/s","/c",`"${s}"`],r.command=process.env.comspec||"cmd.exe",r.options.windowsVerbatimArguments=!0}return r}function js(r,e,t){e&&!Array.isArray(e)&&(t=e,e=null),e=e?e.slice(0):[],t=Object.assign({},t);let n={command:r,args:e,options:t,file:void 0,original:{command:r,args:e}};return t.shell?n:Ds(n)}xr.exports=js});var Dr=E((ja,Fr)=>{"use strict";var de=process.platform==="win32";function me(r,e){return Object.assign(new Error(`${e} ${r.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${e} ${r.command}`,path:r.command,spawnargs:r.args})}function ks(r,e){if(!de)return;let t=r.emit;r.emit=function(n,s){if(n==="exit"){let i=Pr(s,e);if(i)return t.call(r,"error",i)}return t.apply(r,arguments)}}function Pr(r,e){return de&&r===1&&!e.file?me(e.original,"spawn"):null}function _s(r,e){return de&&r===1&&!e.file?me(e.original,"spawnSync"):null}Fr.exports={hookChildProcess:ks,verifyENOENT:Pr,verifyENOENTSync:_s,notFoundError:me}});var _r=E((ka,j)=>{"use strict";var jr=require("child_process"),$e=Cr(),ge=Dr();function kr(r,e,t){let n=$e(r,e,t),s=jr.spawn(n.command,n.args,n.options);return ge.hookChildProcess(s,n),s}function Us(r,e,t){let n=$e(r,e,t),s=jr.spawnSync(n.command,n.args,n.options);return s.error=s.error||ge.verifyENOENTSync(s.status,n),s}j.exports=kr;j.exports.spawn=kr;j.exports.sync=Us;j.exports._parse=$e;j.exports._enoent=ge});var k=E((_a,Ur)=>{"use strict";var bs="2.0.0",Gs=Number.MAX_SAFE_INTEGER||9007199254740991,Xs=16,Hs=250,Vs=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Ur.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:Xs,MAX_SAFE_BUILD_LENGTH:Hs,MAX_SAFE_INTEGER:Gs,RELEASE_TYPES:Vs,SEMVER_SPEC_VERSION:bs,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var G=E((Ua,br)=>{"use strict";var Ms=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...r)=>console.error("SEMVER",...r):()=>{};br.exports=Ms});var _=E((q,Gr)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:Re,MAX_SAFE_BUILD_LENGTH:Ys,MAX_LENGTH:zs}=k(),Bs=G();q=Gr.exports={};var Js=q.re=[],Ws=q.safeRe=[],h=q.src=[],Ks=q.safeSrc=[],p=q.t={},Zs=0,we="[a-zA-Z0-9-]",Qs=[["\\s",1],["\\d",zs],[we,Ys]],ei=r=>{for(let[e,t]of Qs)r=r.split(`${e}*`).join(`${e}{0,${t}}`).split(`${e}+`).join(`${e}{1,${t}}`);return r},$=(r,e,t)=>{let n=ei(e),s=Zs++;Bs(r,s,e),p[r]=s,h[s]=e,Ks[s]=n,Js[s]=new RegExp(e,t?"g":void 0),Ws[s]=new RegExp(n,t?"g":void 0)};$("NUMERICIDENTIFIER","0|[1-9]\\d*");$("NUMERICIDENTIFIERLOOSE","\\d+");$("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${we}*`);$("MAINVERSION",`(${h[p.NUMERICIDENTIFIER]})\\.(${h[p.NUMERICIDENTIFIER]})\\.(${h[p.NUMERICIDENTIFIER]})`);$("MAINVERSIONLOOSE",`(${h[p.NUMERICIDENTIFIERLOOSE]})\\.(${h[p.NUMERICIDENTIFIERLOOSE]})\\.(${h[p.NUMERICIDENTIFIERLOOSE]})`);$("PRERELEASEIDENTIFIER",`(?:${h[p.NONNUMERICIDENTIFIER]}|${h[p.NUMERICIDENTIFIER]})`);$("PRERELEASEIDENTIFIERLOOSE",`(?:${h[p.NONNUMERICIDENTIFIER]}|${h[p.NUMERICIDENTIFIERLOOSE]})`);$("PRERELEASE",`(?:-(${h[p.PRERELEASEIDENTIFIER]}(?:\\.${h[p.PRERELEASEIDENTIFIER]})*))`);$("PRERELEASELOOSE",`(?:-?(${h[p.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${h[p.PRERELEASEIDENTIFIERLOOSE]})*))`);$("BUILDIDENTIFIER",`${we}+`);$("BUILD",`(?:\\+(${h[p.BUILDIDENTIFIER]}(?:\\.${h[p.BUILDIDENTIFIER]})*))`);$("FULLPLAIN",`v?${h[p.MAINVERSION]}${h[p.PRERELEASE]}?${h[p.BUILD]}?`);$("FULL",`^${h[p.FULLPLAIN]}$`);$("LOOSEPLAIN",`[v=\\s]*${h[p.MAINVERSIONLOOSE]}${h[p.PRERELEASELOOSE]}?${h[p.BUILD]}?`);$("LOOSE",`^${h[p.LOOSEPLAIN]}$`);$("GTLT","((?:<|>)?=?)");$("XRANGEIDENTIFIERLOOSE",`${h[p.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);$("XRANGEIDENTIFIER",`${h[p.NUMERICIDENTIFIER]}|x|X|\\*`);$("XRANGEPLAIN",`[v=\\s]*(${h[p.XRANGEIDENTIFIER]})(?:\\.(${h[p.XRANGEIDENTIFIER]})(?:\\.(${h[p.XRANGEIDENTIFIER]})(?:${h[p.PRERELEASE]})?${h[p.BUILD]}?)?)?`);$("XRANGEPLAINLOOSE",`[v=\\s]*(${h[p.XRANGEIDENTIFIERLOOSE]})(?:\\.(${h[p.XRANGEIDENTIFIERLOOSE]})(?:\\.(${h[p.XRANGEIDENTIFIERLOOSE]})(?:${h[p.PRERELEASELOOSE]})?${h[p.BUILD]}?)?)?`);$("XRANGE",`^${h[p.GTLT]}\\s*${h[p.XRANGEPLAIN]}$`);$("XRANGELOOSE",`^${h[p.GTLT]}\\s*${h[p.XRANGEPLAINLOOSE]}$`);$("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Re}})(?:\\.(\\d{1,${Re}}))?(?:\\.(\\d{1,${Re}}))?`);$("COERCE",`${h[p.COERCEPLAIN]}(?:$|[^\\d])`);$("COERCEFULL",h[p.COERCEPLAIN]+`(?:${h[p.PRERELEASE]})?(?:${h[p.BUILD]})?(?:$|[^\\d])`);$("COERCERTL",h[p.COERCE],!0);$("COERCERTLFULL",h[p.COERCEFULL],!0);$("LONETILDE","(?:~>?)");$("TILDETRIM",`(\\s*)${h[p.LONETILDE]}\\s+`,!0);q.tildeTrimReplace="$1~";$("TILDE",`^${h[p.LONETILDE]}${h[p.XRANGEPLAIN]}$`);$("TILDELOOSE",`^${h[p.LONETILDE]}${h[p.XRANGEPLAINLOOSE]}$`);$("LONECARET","(?:\\^)");$("CARETTRIM",`(\\s*)${h[p.LONECARET]}\\s+`,!0);q.caretTrimReplace="$1^";$("CARET",`^${h[p.LONECARET]}${h[p.XRANGEPLAIN]}$`);$("CARETLOOSE",`^${h[p.LONECARET]}${h[p.XRANGEPLAINLOOSE]}$`);$("COMPARATORLOOSE",`^${h[p.GTLT]}\\s*(${h[p.LOOSEPLAIN]})$|^$`);$("COMPARATOR",`^${h[p.GTLT]}\\s*(${h[p.FULLPLAIN]})$|^$`);$("COMPARATORTRIM",`(\\s*)${h[p.GTLT]}\\s*(${h[p.LOOSEPLAIN]}|${h[p.XRANGEPLAIN]})`,!0);q.comparatorTrimReplace="$1$2$3";$("HYPHENRANGE",`^\\s*(${h[p.XRANGEPLAIN]})\\s+-\\s+(${h[p.XRANGEPLAIN]})\\s*$`);$("HYPHENRANGELOOSE",`^\\s*(${h[p.XRANGEPLAINLOOSE]})\\s+-\\s+(${h[p.XRANGEPLAINLOOSE]})\\s*$`);$("STAR","(<|>)?=?\\s*\\*");$("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");$("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var z=E((ba,Xr)=>{"use strict";var ri=Object.freeze({loose:!0}),ti=Object.freeze({}),ni=r=>r?typeof r!="object"?ri:r:ti;Xr.exports=ni});var Ie=E((Ga,Mr)=>{"use strict";var Hr=/^[0-9]+$/,Vr=(r,e)=>{if(typeof r=="number"&&typeof e=="number")return r===e?0:r<e?-1:1;let t=Hr.test(r),n=Hr.test(e);return t&&n&&(r=+r,e=+e),r===e?0:t&&!n?-1:n&&!t?1:r<e?-1:1},si=(r,e)=>Vr(e,r);Mr.exports={compareIdentifiers:Vr,rcompareIdentifiers:si}});var S=E((Xa,zr)=>{"use strict";var B=G(),{MAX_LENGTH:Yr,MAX_SAFE_INTEGER:J}=k(),{safeRe:W,t:K}=_(),ii=z(),{compareIdentifiers:Se}=Ie(),oi=(r,e)=>{let t=e.split(".");if(t.length>r.length)return!1;for(let n=0;n<t.length;n++)if(Se(r[n],t[n])!==0)return!1;return!0},Ne=class r{constructor(e,t){if(t=ii(t),e instanceof r){if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>Yr)throw new TypeError(`version is longer than ${Yr} characters`);B("SemVer",e,t),this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease;let n=e.trim().match(t.loose?W[K.LOOSE]:W[K.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>J||this.major<0)throw new TypeError("Invalid major version");if(this.minor>J||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>J||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let i=+s;if(i>=0&&i<J)return i}return s}):this.prerelease=[],this.build=n[5]?n[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(e){if(B("SemVer.compare",this.version,this.options,e),!(e instanceof r)){if(typeof e=="string"&&e===this.version)return 0;e=new r(e,this.options)}return e.version===this.version?0:this.compareMain(e)||this.comparePre(e)}compareMain(e){return e instanceof r||(e=new r(e,this.options)),this.major<e.major?-1:this.major>e.major?1:this.minor<e.minor?-1:this.minor>e.minor?1:this.patch<e.patch?-1:this.patch>e.patch?1:0}comparePre(e){if(e instanceof r||(e=new r(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let t=0;do{let n=this.prerelease[t],s=e.prerelease[t];if(B("prerelease compare",t,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return Se(n,s)}while(++t)}compareBuild(e){e instanceof r||(e=new r(e,this.options));let t=0;do{let n=this.build[t],s=e.build[t];if(B("build compare",t,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return Se(n,s)}while(++t)}inc(e,t,n){if(e.startsWith("pre")){if(!t&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(t){let s=`-${t}`.match(this.options.loose?W[K.PRERELEASELOOSE]:W[K.PRERELEASE]);if(!s||s[1]!==t)throw new Error(`invalid identifier: ${t}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",t,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",t,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",t,n),this.inc("pre",t,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",t,n),this.inc("pre",t,n);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 s=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[s];else{let i=this.prerelease.length;for(;--i>=0;)typeof this.prerelease[i]=="number"&&(this.prerelease[i]++,i=-2);if(i===-1){if(t===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(s)}}if(t){let i=[t,s];if(n===!1&&(i=[t]),oi(this.prerelease,t)){let o=this.prerelease[t.split(".").length];isNaN(o)&&(this.prerelease=i)}else this.prerelease=i}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};zr.exports=Ne});var x=E((Ha,Jr)=>{"use strict";var Br=S(),ci=(r,e,t=!1)=>{if(r instanceof Br)return r;try{return new Br(r,e)}catch(n){if(!t)return null;throw n}};Jr.exports=ci});var Kr=E((Va,Wr)=>{"use strict";var ai=x(),ui=(r,e)=>{let t=ai(r,e);return t?t.version:null};Wr.exports=ui});var Qr=E((Ma,Zr)=>{"use strict";var li=x(),fi=(r,e)=>{let t=li(r.trim().replace(/^[=v]+/,""),e);return t?t.version:null};Zr.exports=fi});var tt=E((Ya,rt)=>{"use strict";var et=S(),hi=(r,e,t,n,s)=>{typeof t=="string"&&(s=n,n=t,t=void 0);try{return new et(r instanceof et?r.version:r,t).inc(e,n,s).version}catch{return null}};rt.exports=hi});var it=E((za,st)=>{"use strict";var nt=x(),pi=(r,e)=>{let t=nt(r,null,!0),n=nt(e,null,!0),s=t.compare(n);if(s===0)return null;let i=s>0,o=i?t:n,c=i?n:t,l=!!o.prerelease.length;if(!!c.prerelease.length&&!l){if(!c.patch&&!c.minor)return"major";if(c.compareMain(o)===0)return c.minor&&!c.patch?"minor":"patch"}let m=l?"pre":"";return t.major!==n.major?m+"major":t.minor!==n.minor?m+"minor":t.patch!==n.patch?m+"patch":"prerelease"};st.exports=pi});var ct=E((Ba,ot)=>{"use strict";var Ei=S(),di=(r,e)=>new Ei(r,e).major;ot.exports=di});var ut=E((Ja,at)=>{"use strict";var mi=S(),$i=(r,e)=>new mi(r,e).minor;at.exports=$i});var ft=E((Wa,lt)=>{"use strict";var gi=S(),Ri=(r,e)=>new gi(r,e).patch;lt.exports=Ri});var pt=E((Ka,ht)=>{"use strict";var wi=x(),Ii=(r,e)=>{let t=wi(r,e);return t&&t.prerelease.length?t.prerelease:null};ht.exports=Ii});var A=E((Za,dt)=>{"use strict";var Et=S(),Si=(r,e,t)=>new Et(r,t).compare(new Et(e,t));dt.exports=Si});var $t=E((Qa,mt)=>{"use strict";var Ni=A(),Ti=(r,e,t)=>Ni(e,r,t);mt.exports=Ti});var Rt=E((eu,gt)=>{"use strict";var Ai=A(),yi=(r,e)=>Ai(r,e,!0);gt.exports=yi});var Z=E((ru,It)=>{"use strict";var wt=S(),Oi=(r,e,t)=>{let n=new wt(r,t),s=new wt(e,t);return n.compare(s)||n.compareBuild(s)};It.exports=Oi});var Nt=E((tu,St)=>{"use strict";var Li=Z(),qi=(r,e)=>r.sort((t,n)=>Li(t,n,e));St.exports=qi});var At=E((nu,Tt)=>{"use strict";var vi=Z(),xi=(r,e)=>r.sort((t,n)=>vi(n,t,e));Tt.exports=xi});var X=E((su,yt)=>{"use strict";var Ci=A(),Pi=(r,e,t)=>Ci(r,e,t)>0;yt.exports=Pi});var Q=E((iu,Ot)=>{"use strict";var Fi=A(),Di=(r,e,t)=>Fi(r,e,t)<0;Ot.exports=Di});var Te=E((ou,Lt)=>{"use strict";var ji=A(),ki=(r,e,t)=>ji(r,e,t)===0;Lt.exports=ki});var Ae=E((cu,qt)=>{"use strict";var _i=A(),Ui=(r,e,t)=>_i(r,e,t)!==0;qt.exports=Ui});var ee=E((au,vt)=>{"use strict";var bi=A(),Gi=(r,e,t)=>bi(r,e,t)>=0;vt.exports=Gi});var re=E((uu,xt)=>{"use strict";var Xi=A(),Hi=(r,e,t)=>Xi(r,e,t)<=0;xt.exports=Hi});var ye=E((lu,Ct)=>{"use strict";var Vi=Te(),Mi=Ae(),Yi=X(),zi=ee(),Bi=Q(),Ji=re(),Wi=(r,e,t,n)=>{switch(e){case"===":return typeof r=="object"&&(r=r.version),typeof t=="object"&&(t=t.version),r===t;case"!==":return typeof r=="object"&&(r=r.version),typeof t=="object"&&(t=t.version),r!==t;case"":case"=":case"==":return Vi(r,t,n);case"!=":return Mi(r,t,n);case">":return Yi(r,t,n);case">=":return zi(r,t,n);case"<":return Bi(r,t,n);case"<=":return Ji(r,t,n);default:throw new TypeError(`Invalid operator: ${e}`)}};Ct.exports=Wi});var Ft=E((fu,Pt)=>{"use strict";var Ki=S(),Zi=x(),{safeRe:te,t:ne}=_(),Qi=(r,e)=>{if(r instanceof Ki)return r;if(typeof r=="number"&&(r=String(r)),typeof r!="string")return null;e=e||{};let t=null;if(!e.rtl)t=r.match(e.includePrerelease?te[ne.COERCEFULL]:te[ne.COERCE]);else{let l=e.includePrerelease?te[ne.COERCERTLFULL]:te[ne.COERCERTL],a;for(;(a=l.exec(r))&&(!t||t.index+t[0].length!==r.length);)(!t||a.index+a[0].length!==t.index+t[0].length)&&(t=a),l.lastIndex=a.index+a[1].length+a[2].length;l.lastIndex=-1}if(t===null)return null;let n=t[2],s=t[3]||"0",i=t[4]||"0",o=e.includePrerelease&&t[5]?`-${t[5]}`:"",c=e.includePrerelease&&t[6]?`+${t[6]}`:"";return Zi(`${n}.${s}.${i}${o}${c}`,e)};Pt.exports=Qi});var jt=E((hu,Dt)=>{"use strict";var eo=x(),ro=k(),to=S(),no=(r,e,t)=>{if(!ro.RELEASE_TYPES.includes(e))return null;let n=so(r,t);return n&&io(n,e)},so=(r,e)=>{let t=r instanceof to?r.version:r;return eo(t,e)},io=(r,e)=>{if(oo(e))return r.version;switch(r.prerelease=[],e){case"major":r.minor=0,r.patch=0;break;case"minor":r.patch=0;break}return r.format()},oo=r=>r.startsWith("pre");Dt.exports=no});var _t=E((pu,kt)=>{"use strict";var Oe=class{constructor(){this.max=1e3,this.map=new Map}get(e){let t=this.map.get(e);if(t!==void 0)return this.map.delete(e),this.map.set(e,t),t}delete(e){return this.map.delete(e)}set(e,t){if(!this.delete(e)&&t!==void 0){if(this.map.size>=this.max){let s=this.map.keys().next().value;this.delete(s)}this.map.set(e,t)}return this}};kt.exports=Oe});var y=E((Eu,Xt)=>{"use strict";var co=/\s+/g,Le=class r{constructor(e,t){if(t=uo(t),e instanceof r)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new r(e.raw,t);if(e instanceof qe)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e.trim().replace(co," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(s=>!bt(s[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let s of this.set)if(s.length===1&&Ro(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e<this.set.length;e++){e>0&&(this.formatted+="||");let t=this.set[e];for(let n=0;n<t.length;n++)n>0&&(this.formatted+=" "),this.formatted+=t[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){e=e.replace(go,"");let n=((this.options.includePrerelease&&mo)|(this.options.loose&&$o))+":"+e,s=Ut.get(n);if(s)return s;let i=this.options.loose,o=i?T[N.HYPHENRANGELOOSE]:T[N.HYPHENRANGE];e=e.replace(o,vo(this.options.includePrerelease)),g("hyphen replace",e),e=e.replace(T[N.COMPARATORTRIM],ho),g("comparator trim",e),e=e.replace(T[N.TILDETRIM],po),g("tilde trim",e),e=e.replace(T[N.CARETTRIM],Eo),g("caret trim",e);let c=e.split(" ").map(u=>wo(u,this.options)).join(" ").split(/\s+/).map(u=>qo(u,this.options));i&&(c=c.filter(u=>(g("loose invalid filter",u,this.options),!!u.match(T[N.COMPARATORLOOSE])))),g("range list",c);let l=new Map,a=c.map(u=>new qe(u,this.options));for(let u of a){if(bt(u))return[u];l.set(u.value,u)}l.size>1&&l.has("")&&l.delete("");let m=[...l.values()];return Ut.set(n,m),m}intersects(e,t){if(!(e instanceof r))throw new TypeError("a Range is required");return this.set.some(n=>Gt(n,t)&&e.set.some(s=>Gt(s,t)&&n.every(i=>s.every(o=>i.intersects(o,t)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new lo(e,this.options)}catch{return!1}for(let t=0;t<this.set.length;t++)if(xo(this.set[t],e,this.options))return!0;return!1}};Xt.exports=Le;var ao=_t(),Ut=new ao,uo=z(),qe=H(),g=G(),lo=S(),{safeRe:T,src:fo,t:N,comparatorTrimReplace:ho,tildeTrimReplace:po,caretTrimReplace:Eo}=_(),{FLAG_INCLUDE_PRERELEASE:mo,FLAG_LOOSE:$o}=k(),go=new RegExp(fo[N.BUILD],"g"),bt=r=>r.value==="<0.0.0-0",Ro=r=>r.value==="",Gt=(r,e)=>{let t=!0,n=r.slice(),s=n.pop();for(;t&&n.length;)t=n.every(i=>s.intersects(i,e)),s=n.pop();return t},wo=(r,e)=>(r=r.replace(T[N.BUILD],""),g("comp",r,e),r=To(r,e),g("caret",r),r=So(r,e),g("tildes",r),r=yo(r,e),g("xrange",r),r=Lo(r,e),g("stars",r),r),I=r=>!r||r.toLowerCase()==="x"||r==="*",Io=(r,e,t)=>I(r)&&!I(e)||I(e)&&t&&!I(t),So=(r,e)=>r.trim().split(/\s+/).map(t=>No(t,e)).join(" "),No=(r,e)=>{let t=e.loose?T[N.TILDELOOSE]:T[N.TILDE],n=e.includePrerelease?"-0":"";return r.replace(t,(s,i,o,c,l)=>{g("tilde",r,s,i,o,c,l);let a;return I(i)?a="":I(o)?a=`>=${i}.0.0${n} <${+i+1}.0.0-0`:I(c)?a=`>=${i}.${o}.0${n} <${i}.${+o+1}.0-0`:l?(g("replaceTilde pr",l),a=`>=${i}.${o}.${c}-${l} <${i}.${+o+1}.0-0`):a=`>=${i}.${o}.${c} <${i}.${+o+1}.0-0`,g("tilde return",a),a})},To=(r,e)=>r.trim().split(/\s+/).map(t=>Ao(t,e)).join(" "),Ao=(r,e)=>{g("caret",r,e);let t=e.loose?T[N.CARETLOOSE]:T[N.CARET],n=e.includePrerelease?"-0":"";return r.replace(t,(s,i,o,c,l)=>{g("caret",r,s,i,o,c,l);let a;return I(i)?a="":I(o)?a=`>=${i}.0.0${n} <${+i+1}.0.0-0`:I(c)?i==="0"?a=`>=${i}.${o}.0${n} <${i}.${+o+1}.0-0`:a=`>=${i}.${o}.0${n} <${+i+1}.0.0-0`:l?(g("replaceCaret pr",l),i==="0"?o==="0"?a=`>=${i}.${o}.${c}-${l} <${i}.${o}.${+c+1}-0`:a=`>=${i}.${o}.${c}-${l} <${i}.${+o+1}.0-0`:a=`>=${i}.${o}.${c}-${l} <${+i+1}.0.0-0`):(g("no pr"),i==="0"?o==="0"?a=`>=${i}.${o}.${c} <${i}.${o}.${+c+1}-0`:a=`>=${i}.${o}.${c} <${i}.${+o+1}.0-0`:a=`>=${i}.${o}.${c} <${+i+1}.0.0-0`),g("caret return",a),a})},yo=(r,e)=>(g("replaceXRanges",r,e),r.split(/\s+/).map(t=>Oo(t,e)).join(" ")),Oo=(r,e)=>{r=r.trim();let t=e.loose?T[N.XRANGELOOSE]:T[N.XRANGE];return r.replace(t,(n,s,i,o,c,l)=>{if(g("xRange",r,n,s,i,o,c,l),Io(i,o,c))return r;let a=I(i),m=a||I(o),u=m||I(c),d=u;return s==="="&&d&&(s=""),l=e.includePrerelease?"-0":"",a?s===">"||s==="<"?n="<0.0.0-0":n="*":s&&d?(m&&(o=0),c=0,s===">"?(s=">=",m?(i=+i+1,o=0,c=0):(o=+o+1,c=0)):s==="<="&&(s="<",m?i=+i+1:o=+o+1),s==="<"&&(l="-0"),n=`${s+i}.${o}.${c}${l}`):m?n=`>=${i}.0.0${l} <${+i+1}.0.0-0`:u&&(n=`>=${i}.${o}.0${l} <${i}.${+o+1}.0-0`),g("xRange return",n),n})},Lo=(r,e)=>(g("replaceStars",r,e),r.trim().replace(T[N.STAR],"")),qo=(r,e)=>(g("replaceGTE0",r,e),r.trim().replace(T[e.includePrerelease?N.GTE0PRE:N.GTE0],"")),vo=r=>(e,t,n,s,i,o,c,l,a,m,u,d)=>(I(n)?t="":I(s)?t=`>=${n}.0.0${r?"-0":""}`:I(i)?t=`>=${n}.${s}.0${r?"-0":""}`:o?t=`>=${t}`:t=`>=${t}${r?"-0":""}`,I(a)?l="":I(m)?l=`<${+a+1}.0.0-0`:I(u)?l=`<${a}.${+m+1}.0-0`:d?l=`<=${a}.${m}.${u}-${d}`:r?l=`<${a}.${m}.${+u+1}-0`:l=`<=${l}`,`${t} ${l}`.trim()),xo=(r,e,t)=>{for(let n=0;n<r.length;n++)if(!r[n].test(e))return!1;if(e.prerelease.length&&!t.includePrerelease){for(let n=0;n<r.length;n++)if(g(r[n].semver),r[n].semver!==qe.ANY&&r[n].semver.prerelease.length>0){let s=r[n].semver;if(s.major===e.major&&s.minor===e.minor&&s.patch===e.patch)return!0}return!1}return!0}});var H=E((du,Bt)=>{"use strict";var V=Symbol("SemVer ANY"),Ce=class r{static get ANY(){return V}constructor(e,t){if(t=Ht(t),e instanceof r){if(e.loose===!!t.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),xe("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===V?this.value="":this.value=this.operator+this.semver.version,xe("comp",this)}parse(e){let t=this.options.loose?Vt[Mt.COMPARATORLOOSE]:Vt[Mt.COMPARATOR],n=e.match(t);if(!n)throw new TypeError(`Invalid comparator: ${e}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new Yt(n[2],this.options.loose):this.semver=V}toString(){return this.value}test(e){if(xe("Comparator.test",e,this.options.loose),this.semver===V||e===V)return!0;if(typeof e=="string")try{e=new Yt(e,this.options)}catch{return!1}return ve(e,this.operator,this.semver,this.options)}intersects(e,t){if(!(e instanceof r))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new zt(e.value,t).test(this.value):e.operator===""?e.value===""?!0:new zt(this.value,t).test(e.semver):(t=Ht(t),t.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!t.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||ve(this.semver,"<",e.semver,t)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||ve(this.semver,">",e.semver,t)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};Bt.exports=Ce;var Ht=z(),{safeRe:Vt,t:Mt}=_(),ve=ye(),xe=G(),Yt=S(),zt=y()});var M=E((mu,Jt)=>{"use strict";var Co=y(),Po=(r,e,t)=>{try{e=new Co(e,t)}catch{return!1}return e.test(r)};Jt.exports=Po});var Kt=E(($u,Wt)=>{"use strict";var Fo=y(),Do=(r,e)=>new Fo(r,e).set.map(t=>t.map(n=>n.value).join(" ").trim().split(" "));Wt.exports=Do});var Qt=E((gu,Zt)=>{"use strict";var jo=S(),ko=y(),_o=(r,e,t)=>{let n=null,s=null,i=null;try{i=new ko(e,t)}catch{return null}return r.forEach(o=>{i.test(o)&&(!n||s.compare(o)===-1)&&(n=o,s=new jo(n,t))}),n};Zt.exports=_o});var rn=E((Ru,en)=>{"use strict";var Uo=S(),bo=y(),Go=(r,e,t)=>{let n=null,s=null,i=null;try{i=new bo(e,t)}catch{return null}return r.forEach(o=>{i.test(o)&&(!n||s.compare(o)===1)&&(n=o,s=new Uo(n,t))}),n};en.exports=Go});var sn=E((wu,nn)=>{"use strict";var Pe=S(),Xo=y(),tn=X(),Ho=(r,e)=>{r=new Xo(r,e);let t=new Pe("0.0.0");if(r.test(t)||(t=new Pe("0.0.0-0"),r.test(t)))return t;t=null;for(let n=0;n<r.set.length;++n){let s=r.set[n],i=null;s.forEach(o=>{let c=new Pe(o.semver.version);switch(o.operator){case">":c.prerelease.length===0?c.patch++:c.prerelease.push(0),c.raw=c.format();case"":case">=":(!i||tn(c,i))&&(i=c);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${o.operator}`)}}),i&&(!t||tn(t,i))&&(t=i)}return t&&r.test(t)?t:null};nn.exports=Ho});var cn=E((Iu,on)=>{"use strict";var Vo=y(),Mo=(r,e)=>{try{return new Vo(r,e).range||"*"}catch{return null}};on.exports=Mo});var se=E((Su,fn)=>{"use strict";var Yo=S(),ln=H(),{ANY:zo}=ln,Bo=y(),Jo=M(),an=X(),un=Q(),Wo=re(),Ko=ee(),Zo=(r,e,t,n)=>{r=new Yo(r,n),e=new Bo(e,n);let s,i,o,c,l;switch(t){case">":s=an,i=Wo,o=un,c=">",l=">=";break;case"<":s=un,i=Ko,o=an,c="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Jo(r,e,n))return!1;for(let a=0;a<e.set.length;++a){let m=e.set[a],u=null,d=null;if(m.forEach(f=>{f.semver===zo&&(f=new ln(">=0.0.0")),u=u||f,d=d||f,s(f.semver,u.semver,n)?u=f:o(f.semver,d.semver,n)&&(d=f)}),u.operator===c||u.operator===l||(!d.operator||d.operator===c)&&i(r,d.semver))return!1;if(d.operator===l&&o(r,d.semver))return!1}return!0};fn.exports=Zo});var pn=E((Nu,hn)=>{"use strict";var Qo=se(),ec=(r,e,t)=>Qo(r,e,">",t);hn.exports=ec});var dn=E((Tu,En)=>{"use strict";var rc=se(),tc=(r,e,t)=>rc(r,e,"<",t);En.exports=tc});var gn=E((Au,$n)=>{"use strict";var mn=y(),nc=(r,e,t)=>(r=new mn(r,t),e=new mn(e,t),r.intersects(e,t));$n.exports=nc});var wn=E((yu,Rn)=>{"use strict";var sc=M(),ic=A();Rn.exports=(r,e,t)=>{let n=[],s=null,i=null,o=r.sort((m,u)=>ic(m,u,t));for(let m of o)sc(m,e,t)?(i=m,s||(s=m)):(i&&n.push([s,i]),i=null,s=null);s&&n.push([s,null]);let c=[];for(let[m,u]of n)m===u?c.push(m):!u&&m===o[0]?c.push("*"):u?m===o[0]?c.push(`<=${u}`):c.push(`${m} - ${u}`):c.push(`>=${m}`);let l=c.join(" || "),a=typeof e.raw=="string"?e.raw:String(e);return l.length<a.length?l:e}});var yn=E((Ou,An)=>{"use strict";var In=y(),je=H(),{ANY:Fe}=je,De=M(),ke=A(),oc=(r,e,t={})=>{if(r===e)return!0;r=new In(r,t),e=new In(e,t);let n=!1;e:for(let s of r.set){for(let i of e.set){let o=ac(s,i,t);if(n=n||o!==null,o)continue e}if(n)return!1}return!0},cc=[new je(">=0.0.0-0")],Sn=[new je(">=0.0.0")],ac=(r,e,t)=>{if(r===e)return!0;if(r.length===1&&r[0].semver===Fe){if(e.length===1&&e[0].semver===Fe)return!0;t.includePrerelease?r=cc:r=Sn}if(e.length===1&&e[0].semver===Fe){if(t.includePrerelease)return!0;e=Sn}let n=new Set,s,i;for(let f of r)f.operator===">"||f.operator===">="?s=Nn(s,f,t):f.operator==="<"||f.operator==="<="?i=Tn(i,f,t):n.add(f.semver);if(n.size>1)return null;let o;if(s&&i){if(o=ke(s.semver,i.semver,t),o>0)return null;if(o===0&&(s.operator!==">="||i.operator!=="<="))return null}for(let f of n){if(s&&!De(f,String(s),t)||i&&!De(f,String(i),t))return null;for(let R of e)if(!De(f,String(R),t))return!1;return!0}let c,l,a,m,u=i&&!t.includePrerelease&&i.semver.prerelease.length?i.semver:!1,d=s&&!t.includePrerelease&&s.semver.prerelease.length?s.semver:!1;u&&u.prerelease.length===1&&i.operator==="<"&&u.prerelease[0]===0&&(u=!1);for(let f of e){if(m=m||f.operator===">"||f.operator===">=",a=a||f.operator==="<"||f.operator==="<=",s){if(d&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===d.major&&f.semver.minor===d.minor&&f.semver.patch===d.patch&&(d=!1),f.operator===">"||f.operator===">="){if(c=Nn(s,f,t),c===f&&c!==s)return!1}else if(s.operator===">="&&!f.test(s.semver))return!1}if(i){if(u&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===u.major&&f.semver.minor===u.minor&&f.semver.patch===u.patch&&(u=!1),f.operator==="<"||f.operator==="<="){if(l=Tn(i,f,t),l===f&&l!==i)return!1}else if(i.operator==="<="&&!f.test(i.semver))return!1}if(!f.operator&&(i||s)&&o!==0)return!1}return!(s&&a&&!i&&o!==0||i&&m&&!s&&o!==0||d||u)},Nn=(r,e,t)=>{if(!r)return e;let n=ke(r.semver,e.semver,t);return n>0?r:n<0||e.operator===">"&&r.operator===">="?e:r},Tn=(r,e,t)=>{if(!r)return e;let n=ke(r.semver,e.semver,t);return n<0?r:n>0||e.operator==="<"&&r.operator==="<="?e:r};An.exports=oc});var vn=E((Lu,qn)=>{"use strict";var _e=_(),On=k(),uc=S(),Ln=Ie(),lc=x(),fc=Kr(),hc=Qr(),pc=tt(),Ec=it(),dc=ct(),mc=ut(),$c=ft(),gc=pt(),Rc=A(),wc=$t(),Ic=Rt(),Sc=Z(),Nc=Nt(),Tc=At(),Ac=X(),yc=Q(),Oc=Te(),Lc=Ae(),qc=ee(),vc=re(),xc=ye(),Cc=Ft(),Pc=jt(),Fc=H(),Dc=y(),jc=M(),kc=Kt(),_c=Qt(),Uc=rn(),bc=sn(),Gc=cn(),Xc=se(),Hc=pn(),Vc=dn(),Mc=gn(),Yc=wn(),zc=yn();qn.exports={parse:lc,valid:fc,clean:hc,inc:pc,diff:Ec,major:dc,minor:mc,patch:$c,prerelease:gc,compare:Rc,rcompare:wc,compareLoose:Ic,compareBuild:Sc,sort:Nc,rsort:Tc,gt:Ac,lt:yc,eq:Oc,neq:Lc,gte:qc,lte:vc,cmp:xc,coerce:Cc,truncate:Pc,Comparator:Fc,Range:Dc,satisfies:jc,toComparators:kc,maxSatisfying:_c,minSatisfying:Uc,minVersion:bc,validRange:Gc,outside:Xc,gtr:Hc,ltr:Vc,intersects:Mc,simplifyRange:Yc,subset:zc,SemVer:uc,re:_e.re,src:_e.src,tokens:_e.t,SEMVER_SPEC_VERSION:On.SEMVER_SPEC_VERSION,RELEASE_TYPES:On.RELEASE_TYPES,compareIdentifiers:Ln.compareIdentifiers,rcompareIdentifiers:Ln.rcompareIdentifiers}});var Gn=E((qu,bn)=>{var C=require("fs"),O=require("path"),Cn=_r(),L=vn(),{DEFAULT_API_URL:Bc}=ue(),Pn=["dependencies","devDependencies","optionalDependencies","peerDependencies"];function Ue(r){let e=typeof r=="string"&&r.match(/^((?:@[a-z0-9][a-z0-9._-]*\/)?[a-z0-9][a-z0-9._-]*)(?:@([^\r\n]+))?$/);if(!e)throw new Error(`Invalid npm dependency: ${String(r)}`);return{name:e[1],version:e[2]}}function Ge(r){let e=new Map;for(let t of r){let{name:n,version:s}=Ue(t),i=e.get(n);e.set(n,i&&s?Fn(n,i,s):s||i)}return e}function Fn(r,e,t){if(e===t)return e;let n=L.validRange(e),s=L.validRange(t);if(n&&s)try{if(L.subset(s,n))return t;if(L.subset(n,s))return e}catch{}throw new Error(`Conflicting registry versions for ${r}: ${e} and ${t}`)}function Jc(r,e){let t=typeof r=="string"&&L.validRange(r),n=L.validRange(e);if(!t||!n)return!1;try{return L.subset(t,n)}catch{return!1}}function oe(r,e){if(Jc(r,e))return"satisfied";let t=typeof r=="string"&&L.validRange(r),n=L.validRange(e);if(!t||!n)return"incomparable";try{let s=L.minVersion(t),i=L.minVersion(n);return!s||!i?"incomparable":L.lt(s,i)?"lower":"newer"}catch{return"incomparable"}}function ie(r,e){let t=Pn.find(n=>Object.hasOwn(r[n]||{},e));return t?{section:t,existing:r[t][e]}:null}function Dn(r,e){let t=Ge(e);if(t.size===0)return;let n=O.join(r,"package.json"),s=JSON.parse(C.readFileSync(n,"utf8"));for(let[i,o]of t){let c=ie(s,i),l=c?.section||"dependencies";s[l]||={};let a=c?.existing;s[l][i]=a===void 0?o||"latest":o&&oe(a,o)==="lower"?o:a}C.writeFileSync(n,`${JSON.stringify(s,null,2)}
3
+ `)}function ce(r){let e=[["pnpm-lock.yaml","pnpm"],["yarn.lock","yarn"],["bun.lock","bun"],["bun.lockb","bun"],["package-lock.json","npm"],["npm-shrinkwrap.json","npm"]];for(let t=O.resolve(r);;t=O.dirname(t)){let n=O.join(t,"package.json");if(C.existsSync(n)){let s=JSON.parse(C.readFileSync(n,"utf8")),i=String(s.packageManager||"").split("@")[0];if(["npm","pnpm","yarn","bun"].includes(i))return i}for(let[s,i]of e)if(C.existsSync(O.join(t,s)))return i;if(O.dirname(t)===t)return"npm"}}var xn={npm:"npx",pnpm:"pnpm exec",yarn:"yarn",bun:"bunx"};function be(r,e=process.cwd()){let t;try{t=ce(e)}catch{t="npm"}return`${xn[t]||xn.npm} frontfriend ${r}`}function Wc(r,e=process.cwd()){let t=null;try{if(t=r?new URL(r).origin:null,t==="https://app.v4.frontfriend.dev")return be("login --api-url https://app.frontfriend.dev",e)}catch{t=null}return be(t&&t!==new URL(Bc).origin?`login --api-url ${t}`:"login",e)}function jn(r){return JSON.parse(C.readFileSync(O.join(r,"package.json"),"utf8"))}function Xe(r,e){let t=Ge(e);if(t.size===0)return[];let n=jn(r),s=[];for(let[i,o]of t){let c=ie(n,i);c&&(!o||oe(c.existing,o)!=="lower")||s.push(o?`${i}@${o}`:i)}return s}function Kc(r,e){let t=e.filter(u=>u.required),n=Ge(t.flatMap(u=>u.dependencies)),s=(u,d)=>d.filter(f=>f.dependencies.some(R=>Ue(R).name===u)).map(f=>f.component).filter(Boolean),i=e.filter(u=>!u.required);if(n.size===0&&i.length===0)return{missing:[],kept:[],repair:[]};let o=jn(r),c=[],l=[];for(let[u,d]of n){let f=ie(o,u);if(!f){c.push(d?`${u}@${d}`:u);continue}if(!d)continue;let R=oe(f.existing,d);R==="lower"?c.push(`${u}@${d}`):R!=="satisfied"&&l.push({name:u,current:f.existing,declared:d,components:s(u,t)})}let a=new Map;for(let u of i.flatMap(d=>d.dependencies)){let{name:d,version:f}=Ue(u);if(n.has(d)||ie(o,d))continue;let R=a.get(d),P=f||R?.version;if(R?.version&&f&&R.version!==f)try{P=Fn(d,R.version,f)}catch{P=R.version}a.set(d,{version:P})}let m=[...a].map(([u,{version:d}])=>({request:d?`${u}@${d}`:u,components:s(u,i)}));return{missing:c,kept:l,repair:m}}function kn(r,e){return[r==="npm"?"install":"add",...e]}function Zc(r){return/^[\w@/.:^~=+-]+$/.test(r)?r:`'${r.replace(/'/g,"'\\''")}'`}function _n(r,e){let t=ce(r);return[t,...kn(t,e)].map(Zc).join(" ")}function Un(r,e,{stdio:t="inherit"}={}){let n=Xe(r,e);if(n.length===0)return;let s=ce(r),i=Cn.sync(s,kn(s,n),{cwd:r,stdio:t});if(i.error||i.status!==0)throw Dn(r,e),i.error||new Error(`${s} dependency installation failed with status ${i.status}. Dependencies were saved; run ${s} install.`)}function Qc(r,e,{install:t=!0,stdio:n="inherit",log:s=console.log}={}){let i=Xe(r,e);if(i.length===0)return{missing:i,command:null,installed:!1};let o=_n(r,i);if(!t)return s(`\u{1F4E6} Component dependencies missing from package.json. Install them with:
4
+ ${o}`),{missing:i,command:o,installed:!1};s(`\u{1F4E6} Installing component dependencies: ${o}`);try{return Un(r,i,{stdio:n}),{missing:i,command:o,installed:!0}}catch(c){return s(`\u26A0\uFE0F Component dependencies were not installed: ${c.message}
5
5
  Install them with:
6
- ${o}`),{missing:i,command:o,installed:!1,error:c.message}}}function Bc(r,e){for(let t=L.resolve(r);;t=L.dirname(t)){if(C.existsSync(L.join(t,"node_modules",e,"package.json")))return!0;if(L.dirname(t)===t)return!1}}function Jc(r,e,{install:t=!0,stdio:n="inherit",log:s=console.log}={}){let i=JSON.parse(C.readFileSync(L.join(r,"package.json"),"utf8"));if(!On.some(u=>Object.hasOwn(i[u]||{},e))||Bc(r,e))return{installed:!1,command:null};let c=ce(r),l=`${c} install`;if(!t)return s(`\u{1F4E6} ${e} is in package.json but not installed. Install it with:
7
- ${l}`),{installed:!1,command:l};s(`\u{1F4E6} Installing ${e}: ${l}`);let a=Ln.sync(c,["install"],{cwd:r,stdio:n});if(!a.error&&a.status===0)return{installed:!0,command:l};let d=a.error?a.error.message:`${c} install failed with status ${a.status}`;return s(`\u26A0\uFE0F ${e} was not installed: ${d}
6
+ ${o}`),{missing:i,command:o,installed:!1,error:c.message}}}function ea(r,e){for(let t=O.resolve(r);;t=O.dirname(t)){if(C.existsSync(O.join(t,"node_modules",e,"package.json")))return!0;if(O.dirname(t)===t)return!1}}function ra(r,e,{install:t=!0,stdio:n="inherit",log:s=console.log}={}){let i=JSON.parse(C.readFileSync(O.join(r,"package.json"),"utf8"));if(!Pn.some(u=>Object.hasOwn(i[u]||{},e))||ea(r,e))return{installed:!1,command:null};let c=ce(r),l=`${c} install`;if(!t)return s(`\u{1F4E6} ${e} is in package.json but not installed. Install it with:
7
+ ${l}`),{installed:!1,command:l};s(`\u{1F4E6} Installing ${e}: ${l}`);let a=Cn.sync(c,["install"],{cwd:r,stdio:n});if(!a.error&&a.status===0)return{installed:!0,command:l};let m=a.error?a.error.message:`${c} install failed with status ${a.status}`;return s(`\u26A0\uFE0F ${e} was not installed: ${m}
8
8
  Install it with:
9
- ${l}`),{installed:!1,command:l,error:d}}jn.exports={cliCommand:xn,loginCommand:Vc,installDeclaredPackage:Jc,saveNpmDependencies:vn,installNpmDependencies:Dn,installMissingNpmDependencies:zc,missingNpmDependencies:Ge,npmInstallCommand:Fn,planNpmDependencies:Mc,requirementStatus:oe}});var{fileExists:Wc,readJsonFileSafe:Kc,removeFile:Zc,writePrivateJsonFileAtomic:Qc,withPrivateFileLock:ea}=Ve(),_n=require("path"),ra=require("os"),ta=require("https"),na=require("http"),{URL:v}=require("url"),{DEFAULT_API_URL:F}=ue(),{cliCommand:bn,loginCommand:sa}=kn(),ia=_n.join(ra.homedir(),".frontfriend"),U=_n.join(ia,"credentials");function oa(){return U}function ae(){try{return Kc(U)}catch{return null}}function Un(r){try{let e=JSON.parse(Buffer.from(String(r).split(".")[1],"base64url").toString("utf8"));return typeof e.email=="string"?e.email:null}catch{return null}}function ca(){let r=ae();if(!r||!r.accessToken)return null;let e=Number(r.refreshExpiresAt)||0;return{email:Un(r.accessToken),apiUrl:r.ffApiUrl||null,expired:e>0&&e<Date.now()}}function Gn(r){Qc(U,r)}function aa(){return Wc(U)?(Zc(U),!0):!1}function Xe(r,e=60*1e3){return!r?.accessToken||!r.expiresAt||Date.now()+e>=r.expiresAt}function b(r,{apiUrl:e,login:t,next:n}={}){let s=n||`Run \`${t||sa(e)}\` to sign in, then run the command again.`,i=new Error(`${r}. ${s}`);return i.code="FF_AUTH_REFRESH_FAILED",i}function Xn(r,e,t){return new Promise((n,s)=>{let i=new v(r);if(i.protocol!=="https:"&&!(i.protocol==="http:"&&["localhost","127.0.0.1","[::1]"].includes(i.hostname))){s(new Error("Frontfriend API URLs require HTTPS except on localhost"));return}let o=i.protocol==="https:"?ta:na,c=JSON.stringify(e||{}),l=o.request({hostname:i.hostname,port:i.port,path:`${i.pathname}${i.search}`,method:"POST",headers:{"content-type":"application/json","content-length":Buffer.byteLength(c),...t?{authorization:`Bearer ${t}`}:{}}},a=>{let d="";a.on("data",u=>{d+=u}),a.on("end",()=>{if(a.statusCode>=300&&a.statusCode<400){let m=a.headers.location?` to ${a.headers.location}`:"",f=new Error(`HTTP ${a.statusCode}: redirected${m}`);f.statusCode=a.statusCode,f.body=d,s(f);return}let u=null;try{u=d?JSON.parse(d):null}catch{let f=a.headers["content-type"]||"unknown content-type",g=new Error(`Expected JSON from FrontFriend API at ${r}, but received ${f} (HTTP ${a.statusCode}). Check FF_API_URL or pass --api-url with the FrontFriend app URL.`);if(g.statusCode=a.statusCode,g.body=d,a.statusCode>=400){s(g);return}s(g);return}if(a.statusCode>=400){let m=new Error(u?.error_description||u?.error||`HTTP ${a.statusCode}`);m.statusCode=a.statusCode,m.body=u,s(m);return}n(u)})});l.setTimeout(15e3,()=>l.destroy(Object.assign(new Error("Frontfriend API request timed out"),{code:"ETIMEDOUT"}))),l.on("error",s),l.write(c),l.end()})}function Hn(r,e){let t=new v(r?.ffApiUrl||F).origin,n=new v(e).origin;return b(`You are signed in to ${t}, but this command uses ${n}`,{login:bn(`login --api-url ${n}`)})}async function ua(r){return ea(U,r,()=>b("Another Frontfriend command is renewing your sign-in",{next:"Wait for it to finish, then run the command again."}))}async function Vn(r,e=F){return ua(async()=>{let t=ae();if(t&&new v(t.ffApiUrl||F).origin===new v(e).origin){if(!Xe(t))return t;r=t}return la(r,e)})}async function la(r,e=F){if(new v(e).origin!==new v(r.ffApiUrl||F).origin)throw Hn(r,e);if(!r?.refreshToken||!r?.deviceId)throw b("Your Frontfriend sign-in has expired",{apiUrl:e});let t;try{t=await Xn(`${e}/api/plugin/token`,{grant_type:"refresh_token",refresh_token:r.refreshToken,device_id:r.deviceId})}catch(s){throw Object.assign(b(s?.message?`Could not renew your Frontfriend sign-in (${s.message})`:"Could not renew your Frontfriend sign-in",{apiUrl:e}),{cause:s})}if(!t?.access_token||!t?.refresh_token)throw b("Could not renew your Frontfriend sign-in",{apiUrl:e});let n={accessToken:t.access_token,refreshToken:t.refresh_token,deviceId:t.device_id||r.deviceId,expiresAt:Date.now()+(t.expires_in||900)*1e3,refreshExpiresAt:Date.now()+(t.refresh_expires_in||604800)*1e3,ffApiUrl:e};return Gn(n),n}var fa="ffm_";function ha(r){return typeof r=="string"&&r.startsWith(fa)}async function pa(r={}){if(r.envToken)return r.envToken;if(!r.skipCredentials){let e=ae();if(e?.accessToken||e?.refreshToken){let t=r.baseURL||e.ffApiUrl||F;if(new v(t).origin!==new v(e.ffApiUrl||F).origin)throw Hn(e,t);return e.accessToken&&!Xe(e)?e.accessToken:(await Vn(e,t)).accessToken}}return r.configuredToken?(r.silent||console.warn(`\u26A0\uFE0F auth-token in frontfriend.config.js is deprecated. Run \`${bn("login")}\` to keep your sign-in outside the repository.`),r.configuredToken):null}module.exports={isMachineCredential:ha,accountEmail:Un,signedInAccount:ca,getCredentialsPath:oa,readCredentials:ae,writeCredentials:Gn,deleteCredentials:aa,isExpired:Xe,postJson:Xn,refreshCredentials:Vn,resolveAuthToken:pa,createAuthRefreshError:b};
9
+ ${l}`),{installed:!1,command:l,error:m}}bn.exports={cliCommand:be,loginCommand:Wc,installDeclaredPackage:ra,saveNpmDependencies:Dn,installNpmDependencies:Un,installMissingNpmDependencies:Qc,missingNpmDependencies:Xe,npmInstallCommand:_n,planNpmDependencies:Kc,requirementStatus:oe}});var{assertCurrentApiOrigin:Xn}=ze(),{fileExists:ta,readJsonFileSafe:na,removeFile:sa,writePrivateJsonFileAtomic:ia,withPrivateFileLock:oa}=Je(),Hn=require("path"),ca=require("os"),aa=require("https"),ua=require("http"),{URL:v}=require("url"),{DEFAULT_API_URL:F}=ue(),{cliCommand:Vn,loginCommand:la}=Gn(),fa=Hn.join(ca.homedir(),".frontfriend"),b=Hn.join(fa,"credentials");function ha(){return b}function ae(){try{return na(b)}catch{return null}}function Mn(r){try{let e=JSON.parse(Buffer.from(String(r).split(".")[1],"base64url").toString("utf8"));return typeof e.email=="string"?e.email:null}catch{return null}}function pa(){let r=ae();if(!r||!r.accessToken)return null;let e=Number(r.refreshExpiresAt)||0;return{email:Mn(r.accessToken),apiUrl:r.ffApiUrl||null,expired:e>0&&e<Date.now()}}function Yn(r){ia(b,r)}function Ea(){return ta(b)?(sa(b),!0):!1}function He(r,e=60*1e3){return!r?.accessToken||!r.expiresAt||Date.now()+e>=r.expiresAt}function U(r,{apiUrl:e,login:t,next:n}={}){let s=n||`Run \`${t||la(e)}\` to sign in, then run the command again.`,i=new Error(`${r}. ${s}`);return i.code="FF_AUTH_REFRESH_FAILED",i}function zn(r,e,t){return Xn(r),new Promise((n,s)=>{let i=new v(r);if(i.protocol!=="https:"&&!(i.protocol==="http:"&&["localhost","127.0.0.1","[::1]"].includes(i.hostname))){s(new Error("Frontfriend API URLs require HTTPS except on localhost"));return}let o=i.protocol==="https:"?aa:ua,c=JSON.stringify(e||{}),l=o.request({hostname:i.hostname,port:i.port,path:`${i.pathname}${i.search}`,method:"POST",headers:{"content-type":"application/json","content-length":Buffer.byteLength(c),...t?{authorization:`Bearer ${t}`}:{}}},a=>{let m="";a.on("data",u=>{m+=u}),a.on("end",()=>{if(a.statusCode>=300&&a.statusCode<400){let d=a.headers.location?` to ${a.headers.location}`:"",f=new Error(`HTTP ${a.statusCode}: redirected${d}`);f.statusCode=a.statusCode,f.body=m,s(f);return}let u=null;try{u=m?JSON.parse(m):null}catch{let f=a.headers["content-type"]||"unknown content-type",R=new Error(`Expected JSON from FrontFriend API at ${r}, but received ${f} (HTTP ${a.statusCode}). Check FF_API_URL or pass --api-url with the FrontFriend app URL.`);if(R.statusCode=a.statusCode,R.body=m,a.statusCode>=400){s(R);return}s(R);return}if(a.statusCode>=400){let d=new Error(u?.error_description||u?.error||`HTTP ${a.statusCode}`);d.statusCode=a.statusCode,d.body=u,s(d);return}n(u)})});l.setTimeout(15e3,()=>l.destroy(Object.assign(new Error("Frontfriend API request timed out"),{code:"ETIMEDOUT"}))),l.on("error",s),l.write(c),l.end()})}function Bn(r,e){let t=new v(r?.ffApiUrl||F).origin,n=new v(e).origin;return U(`You are signed in to ${t}, but this command uses ${n}`,{login:Vn(`login --api-url ${n}`)})}async function da(r){return oa(b,r,()=>U("Another Frontfriend command is renewing your sign-in",{next:"Wait for it to finish, then run the command again."}))}async function Jn(r,e=F){return da(async()=>{let t=ae();if(t&&new v(t.ffApiUrl||F).origin===new v(e).origin){if(!He(t))return t;r=t}return ma(r,e)})}async function ma(r,e=F){if(new v(e).origin!==new v(r.ffApiUrl||F).origin)throw Bn(r,e);if(!r?.refreshToken||!r?.deviceId)throw U("Your Frontfriend sign-in has expired",{apiUrl:e});let t;try{t=await zn(`${e}/api/plugin/token`,{grant_type:"refresh_token",refresh_token:r.refreshToken,device_id:r.deviceId})}catch(s){throw Object.assign(U(s?.message?`Could not renew your Frontfriend sign-in (${s.message})`:"Could not renew your Frontfriend sign-in",{apiUrl:e}),{cause:s})}if(!t?.access_token||!t?.refresh_token)throw U("Could not renew your Frontfriend sign-in",{apiUrl:e});let n={accessToken:t.access_token,refreshToken:t.refresh_token,deviceId:t.device_id||r.deviceId,expiresAt:Date.now()+(t.expires_in||900)*1e3,refreshExpiresAt:Date.now()+(t.refresh_expires_in||604800)*1e3,ffApiUrl:e};return Yn(n),n}var $a="ffm_";function ga(r){return typeof r=="string"&&r.startsWith($a)}async function Ra(r={}){if(r.baseURL&&Xn(r.baseURL),r.envToken)return r.envToken;if(!r.skipCredentials){let e=ae();if(e?.accessToken||e?.refreshToken){let t=r.baseURL||e.ffApiUrl||F;if(new v(t).origin!==new v(e.ffApiUrl||F).origin)throw Bn(e,t);return e.accessToken&&!He(e)?e.accessToken:(await Jn(e,t)).accessToken}}return r.configuredToken?(r.silent||console.warn(`\u26A0\uFE0F auth-token in frontfriend.config.js is deprecated. Run \`${Vn("login")}\` to keep your sign-in outside the repository.`),r.configuredToken):null}module.exports={isMachineCredential:ga,accountEmail:Mn,signedInAccount:pa,getCredentialsPath:ha,readCredentials:ae,writeCredentials:Yn,deleteCredentials:Ea,isExpired:He,postJson:zn,refreshCredentials:Jn,resolveAuthToken:Ra,createAuthRefreshError:U};
@@ -1,2 +1,2 @@
1
- var y=(i,r)=>()=>(r||i((r={exports:{}}).exports,r),r.exports);var g=y((q,h)=>{var d=require("path"),{createRequire:b}=require("module"),l;function T(i){if(l)return l;let r=[null,i&&d.isAbsolute(i)?i:null,d.join(process.cwd(),"package.json")];for(let s of r)try{return l=s?b(s)("typescript"):require("typescript"),l}catch{}let e=new Error("Reading component source or build configuration needs TypeScript: install it in the Application (npm i -D typescript).");throw e.code="FF_TYPESCRIPT_UNAVAILABLE",e}h.exports={loadTypeScript:T}});var I=require("path"),{loadTypeScript:A}=g(),u={ui:"@/components/ui",components:"@/components",utils:"@/lib/utils",lib:"@/lib",hooks:"@/hooks"};function S(i,r){if(r.endsWith(".vue"))return[...i.matchAll(/<script\b[^>]*>([\s\S]*?)<\/script>/gi)].flatMap(t=>{let n=t.index+t[0].indexOf(">")+1;return S(t[1],`${r}.ts`).map(c=>({...c,start:c.start+n,end:c.end+n}))});let e=A(r),s=e.createSourceFile(r,i,e.ScriptTarget.Latest,!0,r.endsWith(".tsx")?e.ScriptKind.TSX:e.ScriptKind.TS),a=[],o=t=>{let n=e.isImportDeclaration(t)||e.isExportDeclaration(t)?t.moduleSpecifier:e.isCallExpression(t)&&(t.expression.kind===e.SyntaxKind.ImportKeyword||t.expression.getText(s)==="require")?t.arguments[0]:null;n&&e.isStringLiteral(n)&&a.push({value:n.text,start:n.getStart(s),end:n.end}),e.forEachChild(t,o)};return o(s),a}function f(i,r,e,s){let a=S(i,r).map(t=>{let n=t.value.replace(/^@\/registry\/(?:bases\/)?[^/]+\/(ui|lib|hooks|components)\//,(c,p)=>`${u[p]}/`);for(let[c,p]of Object.entries(e).sort((m,x)=>String(x[1]).length-String(m[1]).length))if(u[c]&&(n===p||n.startsWith(`${p}/`))){n=u[c]+n.slice(p.length);break}return{...t,normalized:n}}),o=i;for(let t of a.reverse())(s||t.value!==t.normalized)&&(o=o.slice(0,t.start)+JSON.stringify(t.normalized)+o.slice(t.end));return s?o.replace(/\r\n/g,`
2
- `):o}function v(i,r,e={}){return f(i,r,e,!0)}function E(i,r={}){return f(i.content,i.path,r,!1)}module.exports={PORTABLE_ALIASES:u,importStrings:S,normalizedSource:v,normalizeNativeImports:E};
1
+ var x=(n,r)=>()=>(r||n((r={exports:{}}).exports,r),r.exports);var h=x((q,f)=>{var d=require("path"),{createRequire:b}=require("module"),l;function T(n){if(l)return l;let r=[null,n&&d.isAbsolute(n)?n:null,d.join(process.cwd(),"package.json")];for(let o of r)try{let c=o?b(o)("typescript"):require("typescript");if(typeof c?.createSourceFile!="function")continue;return l=c,l}catch{}let e=new Error("Reading component source or build configuration needs TypeScript: install it in the Application (npm i -D typescript).");throw e.code="FF_TYPESCRIPT_UNAVAILABLE",e}f.exports={loadTypeScript:T}});var I=require("path"),{loadTypeScript:A}=h(),u={ui:"@/components/ui",components:"@/components",utils:"@/lib/utils",lib:"@/lib",hooks:"@/hooks"};function S(n,r){if(r.endsWith(".vue"))return[...n.matchAll(/<script\b[^>]*>([\s\S]*?)<\/script>/gi)].flatMap(t=>{let i=t.index+t[0].indexOf(">")+1;return S(t[1],`${r}.ts`).map(a=>({...a,start:a.start+i,end:a.end+i}))});let e=A(r),o=e.createSourceFile(r,n,e.ScriptTarget.Latest,!0,r.endsWith(".tsx")?e.ScriptKind.TSX:e.ScriptKind.TS),c=[],s=t=>{let i=e.isImportDeclaration(t)||e.isExportDeclaration(t)?t.moduleSpecifier:e.isCallExpression(t)&&(t.expression.kind===e.SyntaxKind.ImportKeyword||t.expression.getText(o)==="require")?t.arguments[0]:null;i&&e.isStringLiteral(i)&&c.push({value:i.text,start:i.getStart(o),end:i.end}),e.forEachChild(t,s)};return s(o),c}function g(n,r,e,o){let c=S(n,r).map(t=>{let i=t.value.replace(/^@\/registry\/(?:bases\/)?[^/]+\/(ui|lib|hooks|components)\//,(a,p)=>`${u[p]}/`);for(let[a,p]of Object.entries(e).sort((y,m)=>String(m[1]).length-String(y[1]).length))if(u[a]&&(i===p||i.startsWith(`${p}/`))){i=u[a]+i.slice(p.length);break}return{...t,normalized:i}}),s=n;for(let t of c.reverse())(o||t.value!==t.normalized)&&(s=s.slice(0,t.start)+JSON.stringify(t.normalized)+s.slice(t.end));return o?s.replace(/\r\n/g,`
2
+ `):s}function v(n,r,e={}){return g(n,r,e,!0)}function E(n,r={}){return g(n.content,n.path,r,!1)}module.exports={PORTABLE_ALIASES:u,importStrings:S,normalizedSource:v,normalizeNativeImports:E};