shadcn 4.11.0 → 4.11.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,4 +1,4 @@
|
|
|
1
|
-
import {m,l,f,d as d$1,c as c$1,e,n,u,p,b as b$1,q as q$1,r,s,t,z as z$2,B as B$1,x,o,g as g$1}from'./chunk-MTWZIHEW.js';import {a,d,c,b,g,f as f$1}from'./chunk-7SBJAAAY.js';import*as R from'path';import R__default,{join,basename,normalize,delimiter,resolve,dirname}from'path';import {z as z$1}from'zod';import
|
|
1
|
+
import {m,l,f,d as d$1,c as c$1,e,n,u,p,b as b$1,q as q$1,r,s,t,z as z$2,B as B$1,x,o,g as g$1}from'./chunk-MTWZIHEW.js';import {a,d,c,b,g,f as f$1}from'./chunk-7SBJAAAY.js';import*as R from'path';import R__default,{join,basename,normalize,delimiter,resolve,dirname}from'path';import {z as z$1}from'zod';import Zn,{promises,existsSync,statSync}from'fs';import {green,cyan,yellow,red}from'kleur/colors';import K from'fs-extra';import Ct from'fast-glob';import {loadConfig,createMatchPath}from'tsconfig-paths';import {cosmiconfig}from'cosmiconfig';import ou,{tmpdir,homedir}from'os';import ga from'ora';import {Project,SyntaxKind,ScriptKind,QuoteKind}from'ts-morph';import {transformFromAstSync}from'@babel/core';import {parse}from'@babel/parser';import Ia from'@babel/plugin-transform-typescript';import*as Pt from'recast';import Da from'prompts';import _e from'deepmerge';import {EnvHttpProxyAgent}from'undici';import {execa}from'execa';import {createHash}from'crypto';import Zc from'stringify-object';import Z,{cwd}from'process';import Jl from'readline';import nu from'events';import*as Qi from'fs/promises';import Qi__default from'fs/promises';import {createRequire}from'module';import {spawn}from'child_process';import {PassThrough}from'stream';import au from'tty';import hh from'fuzzysort';var xe=process.env.REGISTRY_URL??"https://ui.shadcn.com/r",F=xe.replace(/\/r\/?$/,""),pt="new-york-v4",Os=[{name:"neutral",label:"Neutral"},{name:"zinc",label:"Zinc"},{name:"stone",label:"Stone"},{name:"mauve",label:"Mauve"},{name:"olive",label:"Olive"},{name:"mist",label:"Mist"},{name:"taupe",label:"Taupe"}],D={"@shadcn":`${xe}/styles/{style}/{name}.json`};var Mh=[{name:"toast",deprecatedBy:"sonner",message:"The toast component is deprecated. Use the sonner component instead."},{name:"toaster",deprecatedBy:"sonner",message:"The toaster component is deprecated. Use the sonner component instead."}];var N={NETWORK_ERROR:"NETWORK_ERROR",NOT_FOUND:"NOT_FOUND",GONE:"GONE",UNAUTHORIZED:"UNAUTHORIZED",FORBIDDEN:"FORBIDDEN",FETCH_ERROR:"FETCH_ERROR",NOT_CONFIGURED:"NOT_CONFIGURED",INVALID_CONFIG:"INVALID_CONFIG",MISSING_ENV_VARS:"MISSING_ENV_VARS",LOCAL_FILE_ERROR:"LOCAL_FILE_ERROR",PARSE_ERROR:"PARSE_ERROR",VALIDATION_ERROR:"VALIDATION_ERROR",UNKNOWN_ERROR:"UNKNOWN_ERROR"},j=class extends Error{code;statusCode;context;suggestion;timestamp;cause;constructor(t,r={}){super(t),this.name="RegistryError",this.code=r.code||N.UNKNOWN_ERROR,this.statusCode=r.statusCode,this.cause=r.cause,this.context=r.context,this.suggestion=r.suggestion,this.timestamp=new Date,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor);}toJSON(){return {name:this.name,message:this.message,code:this.code,statusCode:this.statusCode,context:this.context,suggestion:this.suggestion,timestamp:this.timestamp,stack:this.stack}}},ve=class extends j{constructor(r,s){let i=`The item at ${r} was not found. It may not exist at the registry.`;super(i,{code:N.NOT_FOUND,statusCode:404,cause:s,context:{url:r},suggestion:"Check if the item name is correct and the registry URL is accessible."});this.url=r;this.name="RegistryNotFoundError";}},mt=class extends j{constructor(r,s){let i=`The item at ${r} is no longer available. It may have been removed or expired.`;super(i,{code:N.GONE,statusCode:410,cause:s,context:{url:r},suggestion:"This resource was previously available but has been permanently removed. Check if a newer version exists or contact the registry maintainer."});this.url=r;this.name="RegistryGoneError";}},We=class extends j{constructor(r,s){let i=`You are not authorized to access the item at ${r}. If this is a remote registry, you may need to authenticate.`;super(i,{code:N.UNAUTHORIZED,statusCode:401,cause:s,context:{url:r},suggestion:"Check your authentication credentials and environment variables."});this.url=r;this.name="RegistryUnauthorizedError";}},He=class extends j{constructor(r,s){let i=`You are not authorized to access the item at ${r}. If this is a remote registry, you may need to authenticate.`;super(i,{code:N.FORBIDDEN,statusCode:403,cause:s,context:{url:r},suggestion:"Check your authentication credentials and environment variables."});this.url=r;this.name="RegistryForbiddenError";}},ze=class extends j{constructor(r,s,i,n){let o=s?`Failed to fetch from registry (${s}): ${r}`:`Failed to fetch from registry: ${r}`,c=typeof n=="string"&&n?`${o} - ${n}`:o,a="Check your network connection and try again.";s===404?a="The requested resource was not found. Check the URL or item name.":s===500?a="The registry server encountered an error. Try again later.":s&&s>=400&&s<500&&(a="There was a client error. Check your request parameters.");super(c,{code:N.FETCH_ERROR,statusCode:s,cause:n,context:{url:r,responseBody:i},suggestion:a});this.url=r;this.responseBody=i;this.name="RegistryFetchError";}},ae=class extends j{constructor(r){let s=r?`Unknown registry "${r}". Make sure it is defined in components.json as follows:
|
|
2
2
|
{
|
|
3
3
|
"registries": {
|
|
4
4
|
"${r}": "[URL_TO_REGISTRY]"
|
|
@@ -14,57 +14,57 @@ ${s.errors.map(n=>` - ${n.path.join(".")}: ${n.message}`).join(`
|
|
|
14
14
|
${t.errors.map(i=>` - ${i.path.join(".")}: ${i.message}`).join(`
|
|
15
15
|
`)}`:r=`Failed to parse registries index:
|
|
16
16
|
${t.errors.map(i=>` - ${i.path.join(".")}: ${i.message}`).join(`
|
|
17
|
-
`)}`;}super(r,{code:N.PARSE_ERROR,cause:t,context:{parseError:t},suggestion:"The registries index may be corrupted or have invalid registry namespace format. Registry names must start with @ (e.g., @shadcn, @example)."}),this.parseError=t,this.name="RegistriesIndexParseError";}};var
|
|
18
|
-
`)){let n=i.trim();if(!n||n.startsWith("#"))continue;let o=i.match(/^(\s*)([A-Za-z0-9_-]+)\s*:/);if(o){s=o[1].length,r=o[2]==="packages";continue}if(!r)continue;let c=i.match(/^(\s*)-\s*(.+?)\s*(?:#.*)?$/);!c||c[1].length<=s||t.push(c[2].trim().replace(/^["']|["']$/g,""));}return t}var
|
|
19
|
-
`))}async function
|
|
20
|
-
`));t[s]=o;}let r=e.safeParse(t);return r.success?r.data:null}async function
|
|
17
|
+
`)}`;}super(r,{code:N.PARSE_ERROR,cause:t,context:{parseError:t},suggestion:"The registries index may be corrupted or have invalid registry namespace format. Registry names must start with @ (e.g., @shadcn, @example)."}),this.parseError=t,this.name="RegistriesIndexParseError";}};var Ro=/^(@[a-zA-Z0-9](?:[a-zA-Z0-9-_]*[a-zA-Z0-9])?)\/(.+)$/;function ce(e){if(!e.startsWith("@"))return {registry:null,item:e};let t=e.match(Ro);return t?{registry:t[1],item:t[2]}:{registry:null,item:e}}var z={"next-app":{name:"next-app",label:"Next.js",links:{installation:`${F}/docs/installation/next`,tailwind:"https://tailwindcss.com/docs/guides/nextjs"}},"next-pages":{name:"next-pages",label:"Next.js",links:{installation:`${F}/docs/installation/next`,tailwind:"https://tailwindcss.com/docs/guides/nextjs"}},remix:{name:"remix",label:"Remix",links:{installation:`${F}/docs/installation/remix`,tailwind:"https://tailwindcss.com/docs/guides/remix"}},"react-router":{name:"react-router",label:"React Router",links:{installation:`${F}/docs/installation/react-router`,tailwind:"https://tailwindcss.com/docs/installation/framework-guides/react-router"}},vite:{name:"vite",label:"Vite",links:{installation:`${F}/docs/installation/vite`,tailwind:"https://tailwindcss.com/docs/guides/vite"}},astro:{name:"astro",label:"Astro",links:{installation:`${F}/docs/installation/astro`,tailwind:"https://tailwindcss.com/docs/guides/astro"}},laravel:{name:"laravel",label:"Laravel",links:{installation:`${F}/docs/installation/laravel`,tailwind:"https://tailwindcss.com/docs/guides/laravel"}},"tanstack-start":{name:"tanstack-start",label:"TanStack Start",links:{installation:`${F}/docs/installation/tanstack`,tailwind:"https://tailwindcss.com/docs/installation/using-postcss"}},gatsby:{name:"gatsby",label:"Gatsby",links:{installation:`${F}/docs/installation/gatsby`,tailwind:"https://tailwindcss.com/docs/guides/gatsby"}},expo:{name:"expo",label:"Expo",links:{installation:`${F}/docs/installation/expo`,tailwind:"https://www.nativewind.dev/docs/getting-started/installation"}},manual:{name:"manual",label:"Manual",links:{installation:`${F}/docs/installation/manual`,tailwind:"https://tailwindcss.com/docs/installation"}}};var T={error:red,warn:yellow,info:cyan,success:green};function yt(e){let t=[e];for(;t.length;){let r=t.shift();if(typeof r=="string"){if(r.startsWith("./"))return r;continue}if(Array.isArray(r)){t.unshift(...r);continue}r&&typeof r=="object"&&t.unshift(...Object.values(r));}return null}function wt(e){if(!e.includes("*"))return "strip_extension";let t=e.slice(e.indexOf("*")+1);return t&&/^\.[^/]+$/.test(t)?"strip_extension":"preserve_extension"}function xt(e,t){let r=t.find(i=>!i.hasWildcard&&i.key===e);if(r)return {path:R__default.resolve(r.rootDir,r.target),matchedAlias:r.key,matchedTarget:r.target,emitMode:r.emitMode};let s=t.filter(i=>i.hasWildcard).sort((i,n)=>n.key.length-i.key.length);for(let i of s){let n=Bt(e,i.key,{allowBareAliasBase:true});if(n!==null)return {path:R__default.resolve(i.rootDir,$o(i.target,n)),matchedAlias:i.key,matchedTarget:i.target,emitMode:i.emitMode}}return null}function Bt(e,t,r={}){if(!t.includes("*"))return e===t?"":null;let[s,i=""]=t.split("*");return e.startsWith(s)&&e.endsWith(i)?i?e.slice(s.length,-i.length):e.slice(s.length):r.allowBareAliasBase&&i===""&&s.endsWith("/")&&e===s.slice(0,-1)?"":null}function $o(e,t){if(!e.includes("*"))return e;let[r,s=""]=e.split("*");return t?`${r}${t}${s}`:r.replace(/\/$/,"")}function le(e="",t=true){let r=R__default.join(e,"package.json");return K.readJSONSync(r,{throws:t})}var Jt=new Map;function Yt(e){let t=R__default.resolve(e),r=Jt.get(t);if(r)return r;let i=le(e,false)?.imports;if(!i||typeof i!="object"||Array.isArray(i))return Jt.set(t,[]),[];let n=[];for(let[o,c]of Object.entries(i)){if(!o.startsWith("#"))continue;let a=yt(c);a&&n.push({key:o,aliasBase:o==="#*"?"#":o.endsWith("/*")?o.slice(0,-2):o,target:a,emitMode:wt(a),hasWildcard:o.includes("*"),rootDir:t});}return Jt.set(t,n),n}function _s(e){let t=Yt(e).map(r=>r.aliasBase);return t.length?jo(t):null}function qe(e,t){return xt(e,Yt(t))}function Ns(e){let t=Yt(e),r=t.some(s=>s.key==="#*")?{components:"#components",ui:"#components/ui",lib:"#lib",hooks:"#hooks",utils:"#lib/utils"}:null;return {components:Ke(t,"components")??r?.components,ui:Ke(t,"ui")??r?.ui,lib:Ke(t,"lib")??r?.lib,hooks:Ke(t,"hooks")??r?.hooks,utils:Ke(t,"utils")??r?.utils}}function Ke(e,t){return e.map(s=>({entry:s,score:Ao(s,t)})).filter(s=>s.score>0).sort((s,i)=>i.score-s.score||i.entry.aliasBase.length-s.entry.aliasBase.length)[0]?.entry.aliasBase}function Ao(e,t){let r=e.aliasBase.toLowerCase(),s=Oo(e.target).toLowerCase();switch(t){case "components":return r.endsWith("/ui")||s.includes("/components/ui")?0:vt(r,"components")?4:vt(s,"components")?3:0;case "ui":return r.endsWith("/ui")||r==="#ui"?5:s.includes("/components/ui")?4:s.endsWith("/ui")?3:0;case "lib":return r==="#lib"||r.endsWith("/lib")?5:s.endsWith("/lib")?4:vt(s,"lib")?3:0;case "hooks":return r==="#hooks"||r.endsWith("/hooks")?5:s.endsWith("/hooks")?4:vt(s,"hooks")?3:0;case "utils":return r==="#utils"||r.endsWith("/utils")?5:s.endsWith("/lib/utils")?4:s.endsWith("/utils")?3:0}}function Oo(e){return e.replace(/\/\*$/,"").replace(/\*$/,"").replace(/\/index\.[^/]+$/,"")}function vt(e,t){return e===t||e.includes(`/${t}`)||e.includes(`${t}/`)}function jo(e){let t=e.map(r=>r.slice(1).split("/").filter(Boolean)).reduce((r,s,i)=>i?r.filter((n,o)=>s[o]===n):s,[]);return t.length?`#${t.join("/")}`:"#"}var S={error(...e){console.log(T.error(e.join(" ")));},warn(...e){console.log(T.warn(e.join(" ")));},info(...e){console.log(T.info(e.join(" ")));},success(...e){console.log(T.success(e.join(" ")));},log(...e){console.log(e.join(" "));},break(){console.log("");}};var _o=["next.config.*","vite.config.*","astro.config.*","remix.config.*","nuxt.config.*","svelte.config.*","gatsby-config.*","angular.json"];async function lf(e){if(K.existsSync(R__default.resolve(e,"pnpm-workspace.yaml")))return true;let t=R__default.resolve(e,"package.json");if(K.existsSync(t))try{if((await K.readJson(t)).workspaces)return !0}catch{}return !!(K.existsSync(R__default.resolve(e,"lerna.json"))||K.existsSync(R__default.resolve(e,"nx.json")))}async function uf(e){let t=await bt(e);if(!t.length)return [];let r=await Ct(t,{cwd:e,onlyDirectories:true,ignore:["**/node_modules/**"]}),s=[];for(let i of r){let n=R__default.resolve(e,i);if(!K.existsSync(R__default.resolve(n,"package.json")))continue;let o=K.existsSync(R__default.resolve(n,"components.json")),c=_o.some(a=>Ct.sync(a,{cwd:n,dot:true}).length>0);(o||c)&&s.push({name:i,hasConfig:o});}return s}function hf(e,t,r){let s=r?.cwdFlag??"-c";S.break(),S.log(`It looks like you are running ${T.info(e)} from a monorepo root.`),S.log(`To use shadcn in a specific workspace, use the ${T.info(s)} flag:`),S.break();for(let i of t)S.log(` shadcn ${e} ${s} ${i.name}`);S.break();}async function bt(e){let t=[],r=R__default.resolve(e,"pnpm-workspace.yaml");if(K.existsSync(r)){let i=await K.readFile(r,"utf8");t.push(...No(i));}let s=R__default.resolve(e,"package.json");if(K.existsSync(s))try{let i=await K.readJson(s),n=Array.isArray(i.workspaces)?i.workspaces:i.workspaces?.packages;Array.isArray(n)&&t.push(...n.filter(o=>!o.startsWith("!")));}catch{}return Array.from(new Set(t))}function No(e){let t=[],r=false,s=0;for(let i of e.split(`
|
|
18
|
+
`)){let n=i.trim();if(!n||n.startsWith("#"))continue;let o=i.match(/^(\s*)([A-Za-z0-9_-]+)\s*:/);if(o){s=o[1].length,r=o[2]==="packages";continue}if(!r)continue;let c=i.match(/^(\s*)-\s*(.+?)\s*(?:#.*)?$/);!c||c[1].length<=s||t.push(c[2].trim().replace(/^["']|["']$/g,""));}return t}var Ls=new Map,Zt=new Map,Rt=new Map;async function Fs(e,t){let r=Vo(e);if(!r)return null;let s=await Do(t,r.packageName);return s?xt(e,Fo(s)):null}function Fo(e){let t=`${e.packageRoot}:${e.packageName}`,r=Zt.get(t);if(r)return r;let i=le(e.packageRoot,false)?.exports;if(!i||typeof i!="object"||Array.isArray(i))return Zt.set(t,[]),[];let n=[];for(let[o,c]of Object.entries(i)){if(o!=="."&&!o.startsWith("./"))continue;let a=yt(c);if(!a)continue;let h=Go(e.packageName,o);n.push({key:o.includes("*")?`${h}/*`:h,aliasBase:h,target:a,emitMode:wt(a),hasWildcard:o.includes("*"),rootDir:e.packageRoot});}return Zt.set(t,n),n}async function Do(e,t){let r=await Ho(e);if(!r)return null;let s=Ls.get(r);if(s?.has(t))return s.get(t)??null;let i=await Wo(r);return Ls.set(r,i),i.get(t)??null}async function Wo(e){let t=await bt(e),r=new Map;if(!t.length)return r;let s=await Ct(t.map(i=>R__default.posix.join(i.split(R__default.sep).join("/"),"package.json")),{cwd:e,ignore:["**/node_modules/**"]});for(let i of s){let n=R__default.resolve(e,R__default.dirname(i)),c=le(n,false)?.name;c&&r.set(c,{packageName:c,packageRoot:n});}return r}async function Ho(e){let t=R__default.resolve(e),r=Rt.get(t);if(r!==void 0)return r;let s=t,i=await zo(t);for(;;){if((await bt(s)).length)return Rt.set(t,s),s;if(i&&s===i)return Rt.set(t,null),null;let o=R__default.dirname(s);if(o===s)return Rt.set(t,null),null;s=o;}}async function zo(e){let t=R__default.resolve(e);for(;;){if(K.existsSync(R__default.resolve(t,".git")))return t;let r=R__default.dirname(t);if(r===t)return null;t=r;}}function Vo(e){if(e.startsWith("#")||e.startsWith(".")||R__default.isAbsolute(e))return null;let t=e.split("/");return e.startsWith("@")?t.length<2?null:{packageName:`${t[0]}/${t[1]}`}:{packageName:t[0]}}function Go(e,t){if(t===".")return e;let r=t.slice(2).replace(/\/\*$/,"");return r?`${e}/${r}`:e}async function Be(e,t){let r=t.cwd??t.absoluteBaseUrl;if(e.startsWith("#")){let i=qe(e,r);if(i)return {path:i.path,source:"package_imports",matchedAlias:i.matchedAlias,matchedTarget:i.matchedTarget,emitMode:i.emitMode}}let s=await Fs(e,r);return s?{path:s.path,source:"workspace_package_exports",matchedAlias:s.matchedAlias,matchedTarget:s.matchedTarget,emitMode:s.emitMode}:qo(e,t)}function Xt(e,t){return e.startsWith("#")?true:t?e.startsWith(`${t}/`):false}function Ko(e){return /^@[^/]+\/[^/]+(?:\/.*)?$/.test(e)}function qo(e,t){let r=createMatchPath(t.absoluteBaseUrl,t.paths)(e,void 0,()=>true,[".ts",".tsx",".jsx",".js",".css"]);if(!r)return null;let s=Bo(e,t.paths);return !s&&Ko(e)?null:{path:r,source:"tsconfig_paths",matchedAlias:s?.key??e,matchedTarget:s?.target??r,emitMode:"strip_extension"}}function Bo(e,t){for(let[r,s]of Object.entries(t)){let i=Array.isArray(s)?s:[s],n=Bt(e,r);if(n!==null)return {key:r,target:i[0]?.includes("*")&&n!==null?i[0].replace(/\*/g,n):i[0]}}return null}var _f="@/components",Nf="@/lib/utils",Mf="app/globals.css",Lf="tailwind.config.js";var Et=cosmiconfig("components",{searchPlaces:["components.json"]});async function Ye(e){let t=await Qo(e);return t?(t.iconLibrary||(t.iconLibrary=t.style==="new-york"?"radix":"lucide"),await It(e,t)):null}async function It(e,t){t.registries={...D,...t.registries||{}};let r=await loadConfig(e);if(r.resultType==="failed")throw new Error(`Failed to load ${t.tsx?"tsconfig":"jsconfig"}.json. ${r.message??""}`.trim());let s=await Je("utils",t.aliases.utils,e,r),i=await Je("components",t.aliases.components,e,r),n=t.aliases.ui?await Je("ui",t.aliases.ui,e,r):R__default.resolve(i??e,"ui"),o=t.aliases.lib?await Je("lib",t.aliases.lib,e,r):R__default.resolve(s??e,".."),c=t.aliases.hooks?await Je("hooks",t.aliases.hooks,e,r):R__default.resolve(i??e,"..","hooks");return Xo(e,{components:i,utils:s,ui:n,lib:o,hooks:c}),d$1.parse({...t,resolvedPaths:{cwd:e,tailwindConfig:t.tailwind.config?R__default.resolve(e,t.tailwind.config):"",tailwindCss:R__default.resolve(e,t.tailwind.css),utils:s,components:i,ui:n,lib:o,hooks:c}})}async function Je(e,t,r,s){let i=await Be(t,{...s,cwd:r});if(!i?.path||t.startsWith("#")&&i.path===R__default.resolve(r,t))return null;if(e!=="utils"&&(i.source==="package_imports"||i.source==="workspace_package_exports")){if(!i.matchedAlias.includes("*")&&/\/index\.[^/]+$/.test(i.path))return R__default.dirname(i.path);if(i.matchedAlias.includes("*")&&/\.[^/]+$/.test(i.path))return i.path.replace(/\.[^/]+$/,"")}return i.path}function Xo(e,t){let r=["components","ui","lib","hooks","utils"].filter(s=>!t[s]);if(r.length)throw new Error([`Could not resolve the following aliases in ${T.info(e)}: ${T.info(r.join(", "))}.`,`Configure path aliases in ${T.info("tsconfig.json")} or imports in ${T.info("package.json")} for this workspace and try again.`].join(`
|
|
19
|
+
`))}async function Qo(e){try{let t=await Et.search(e);if(!t)return null;let r=c$1.parse(t.config);if(r.registries){for(let s of Object.keys(r.registries))if(s in D)throw new Error(`"${s}" is a built-in registry and cannot be overridden.`)}return r}catch(t){let r=`${e}/components.json`;throw t instanceof Error&&t.message.includes("reserved registry")?t:new Error(`Invalid configuration found in ${T.info(r)}.`)}}async function Ff(e$1){let t={};for(let s of Object.keys(e$1.aliases)){if(!ta(s,e$1))continue;let i=e$1.resolvedPaths[s],n=await ea(e$1.resolvedPaths.cwd,i);if(!n){t[s]=e$1;continue}let o=await Ye(n);if(!o)throw new Error([`Could not load the workspace config in ${T.info(n)}.`,`Add ${T.info("components.json")} to this workspace and configure its path aliases or package imports, then try again.`].join(`
|
|
20
|
+
`));t[s]=o;}let r=e.safeParse(t);return r.success?r.data:null}async function ea(e,t){let r=ra(e,t),s=R__default.relative(r,t),n=(await Ct.glob("**/package.json",{cwd:r,deep:3,ignore:["**/node_modules/**","**/dist/**","**/build/**","**/public/**"]})).map(o=>R__default.dirname(o)).find(o=>s.startsWith(o));return n?R__default.join(r,n):null}function ta(e,t){return Object.keys(t.resolvedPaths).filter(r=>r!=="utils").includes(e)}function ra(e,t){let r=e.split(R__default.sep),s=t.split(R__default.sep),i=[];for(let n=0;n<Math.min(r.length,s.length)&&r[n]===s[n];n++)i.push(r[n]);return i.join(R__default.sep)}async function Ds(e,t){return (await re(e))?.tailwindVersion==="v4"?"new-york-v4":t}function Df(e){return e?.startsWith("base-")?"base":"radix"}function Ws(e){let t={resolvedPaths:{cwd:process.cwd(),tailwindConfig:"",tailwindCss:"",utils:"",components:"",ui:"",lib:"",hooks:""},style:"",tailwind:{config:"",css:"",baseColor:"",cssVariables:false},rsc:false,tsx:true,aliases:{components:"",utils:""},registries:{...D}};return e?{...t,...e,resolvedPaths:{...t.resolvedPaths,...e.resolvedPaths||{}},tailwind:{...t.tailwind,...e.tailwind||{}},aliases:{...t.aliases,...e.aliases||{}},registries:{...t.registries,...e.registries||{}}}:t}var $t=["**/node_modules/**",".next","public","dist","build"],na=z$1.object({compilerOptions:z$1.object({paths:z$1.record(z$1.string().or(z$1.array(z$1.string())))})});async function re(e,t){let[r,s,i,n,o,c,a,h]=await Promise.all([Ct.glob("**/{next,vite,astro,app}.config.*|gatsby-config.*|composer.json|react-router.config.*",{cwd:e,deep:3,ignore:$t}),K.pathExists(R__default.resolve(e,"src")),ua(e),ca(e),aa(e,t?.configCssFile),Hs(e),zs(e),le(e,false)]),l=await K.pathExists(R__default.resolve(e,`${s?"src/":""}app`)),u={framework:z.manual,isSrcDir:s,isRSC:false,isTsx:i,tailwindConfigFile:n,tailwindCssFile:o,tailwindVersion:c,frameworkVersion:null,aliasPrefix:a.prefix};if(r.find(f=>f.startsWith("next.config."))?.length)return u.framework=l?z["next-app"]:z["next-pages"],u.isRSC=l,u.frameworkVersion=await oa(u.framework,h),u;if(r.find(f=>f.startsWith("astro.config."))?.length)return u.framework=z.astro,u;if(r.find(f=>f.startsWith("gatsby-config."))?.length)return u.framework=z.gatsby,u;if(r.find(f=>f.startsWith("composer.json"))?.length)return u.framework=z.laravel,u;if(Object.keys(h?.dependencies??{}).find(f=>f.startsWith("@remix-run/")))return u.framework=z.remix,u;if([...Object.keys(h?.dependencies??{}),...Object.keys(h?.devDependencies??{})].find(f=>f.startsWith("@tanstack/react-start")))return u.framework=z["tanstack-start"],u;if(r.find(f=>f.startsWith("react-router.config."))?.length)return u.framework=z["react-router"],u;if(r.find(f=>f.startsWith("vite.config."))?.length)return u.framework=z.vite,u;let d=r.find(f=>f.startsWith("app.config"));return d?.length&&(await K.readFile(R__default.resolve(e,d),"utf8")).includes("defineConfig")?(u.framework=z.vite,u):(h?.dependencies?.expo&&(u.framework=z.expo),u)}async function oa(e,t){if(!t||!["next-app","next-pages"].includes(e.name))return null;let r=t.dependencies?.next||t.devDependencies?.next;if(!r)return null;let s=r.match(/^[\^~]?(\d+\.\d+\.\d+)/);if(s)return s[1];let i=r.match(/(\d+\.\d+\.\d+)/);return i?i[1]:r}async function Hs(e){let[t,r]=await Promise.all([le(e,false),Ye(e)]);return r?.tailwind?.config===""?"v4":!t?.dependencies?.tailwindcss&&!t?.devDependencies?.tailwindcss?null:/^(?:\^|~)?3(?:\.\d+)*(?:-.*)?$/.test(t?.dependencies?.tailwindcss||t?.devDependencies?.tailwindcss||"")?"v3":"v4"}async function aa(e,t){if(t){let n=R__default.resolve(e,t);if(await K.pathExists(n))return t}let[r,s]=await Promise.all([Ct.glob(["**/*.css","**/*.scss"],{cwd:e,deep:5,ignore:$t}),Hs(e)]);if(!r.length)return null;for(let n of r){let o=await K.readFile(R__default.resolve(e,n),"utf8");if(o.includes('@import "tailwindcss"')||o.includes("@import 'tailwindcss'")||o.includes("@tailwind base"))return n}return null}async function ca(e){let t=await Ct.glob("tailwind.config.*",{cwd:e,deep:3,ignore:$t});return t.length?t[0]:null}async function la(e){let t=await loadConfig(e),r=t?.resultType==="success"&&Object.entries(t.paths).length?t.paths:(await ha(e))?.compilerOptions.paths;if(!r||!Object.entries(r).length)return null;for(let[s,i]of Object.entries(r)){let n=Array.isArray(i)?i:[i];if(n.includes("./*")||n.includes("./src/*")||n.includes("./app/*")||n.includes("./resources/js/*"))return s.replace(/\/\*$/,"")??null}return Object.keys(r)?.[0].replace(/\/\*$/,"")??null}async function zs(e){let t=await la(e),r=_s(e);return r&&t?.startsWith("#")?{prefix:r,source:"package_imports"}:t?{prefix:t,source:"tsconfig_paths"}:r?{prefix:r,source:"package_imports"}:{prefix:null,source:null}}async function ua(e){return (await Ct.glob("tsconfig.*",{cwd:e,deep:1,ignore:$t})).length>0}async function ha(e){for(let t of ["tsconfig.json","tsconfig.web.json","tsconfig.app.json"]){let r=R__default.resolve(e,t);if(!await K.pathExists(r))continue;let s=await K.readFile(r,"utf8"),i;try{i=JSON.parse(fa(s));}catch{continue}let n=na.safeParse(i);if(!n.error)return n.data}return null}function fa(e){let t="",r=false,s=false;for(let i=0;i<e.length;i++){let n=e[i],o=e[i+1];if(r){if(t+=n,s){s=false;continue}if(n==="\\"){s=true;continue}n==='"'&&(r=false);continue}if(n==='"'){r=true,t+=n;continue}if(n==="/"&&o==="/"){for(;i<e.length&&e[i]!==`
|
|
21
21
|
`;)i++;i<e.length&&(t+=e[i]);continue}if(n==="/"&&o==="*"){for(i+=2;i<e.length;){if(e[i]==="*"&&e[i+1]==="/"){i++;break}e[i]===`
|
|
22
22
|
`&&(t+=`
|
|
23
23
|
`),i++;}continue}if(n===","){let c=i+1;for(;c<e.length;){for(;/\s/.test(e[c]??"");)c++;if(e[c]==="/"&&e[c+1]==="/"){for(c+=2;c<e.length&&e[c]!==`
|
|
24
|
-
`&&e[c]!=="\r";)c++;continue}if(e[c]==="/"&&e[c+1]==="*"){for(c+=2;c<e.length&&!(e[c]==="*"&&e[c+1]==="/");)c++;c+=2;continue}break}if(e[c]==="}"||e[c]==="]")continue}t+=n;}return t}async function
|
|
24
|
+
`&&e[c]!=="\r";)c++;continue}if(e[c]==="/"&&e[c+1]==="*"){for(c+=2;c<e.length&&!(e[c]==="*"&&e[c+1]==="/");)c++;c+=2;continue}break}if(e[c]==="}"||e[c]==="]")continue}t+=n;}return t}async function ed(e,t=null){let[r,s,i]=await Promise.all([Ye(e),t?Promise.resolve(t):re(e),zs(e)]);if(r)return r;if(!s||!s.tailwindCssFile||s.tailwindVersion==="v3"&&!s.tailwindConfigFile)return null;let n=i.source==="package_imports"?Ns(e):null;if(!s.aliasPrefix)return null;let o=da(s.aliasPrefix,i.source==="package_imports"),c=i.source==="package_imports"&&n?pa({...o,components:n.components??o.components,ui:n.ui??o.ui,hooks:n.hooks??o.hooks,lib:n.lib??o.lib,utils:n.utils??o.utils}):o;if(!c.components||!c.utils)return null;let a={$schema:"https://ui.shadcn.com/schema.json",rsc:s.isRSC,tsx:s.isTsx,style:"new-york",tailwind:{config:s.tailwindConfigFile??"",baseColor:"zinc",css:s.tailwindCssFile,cssVariables:true,prefix:""},iconLibrary:"lucide",aliases:c};return await It(e,a)}function da(e,t=false){return t&&e==="#"?{components:"",ui:void 0,hooks:void 0,lib:void 0,utils:""}:{components:`${e}/components`,ui:`${e}/components/ui`,hooks:`${e}/hooks`,lib:`${e}/lib`,utils:`${e}/lib/utils`}}function pa(e){let t={...e};return !t.ui&&t.components&&(t.ui=`${t.components}/ui`),!t.lib&&t.utils.endsWith("/utils")&&(t.lib=t.utils.slice(0,-6)),!t.utils&&t.lib&&(t.utils=`${t.lib}/utils`),t}async function kt(e){if(!e.resolvedPaths?.cwd)return "v3";let t=await re(e.resolvedPaths.cwd);return t?.tailwindVersion?t.tailwindVersion:null}async function td(e){let t=await Ye(e);if(!t)return [];let s=(await It(e,t)).resolvedPaths.ui;if(!K.existsSync(s))return [];let i=await St(),n=new Set(i?.map(c=>c.name)??[]);return (await promises.readdir(s)).filter(c=>/\.(tsx|jsx)$/.test(c)).map(c=>R__default.basename(c,R__default.extname(c))).filter(c=>n.has(c))}function Vs(e,t,r={}){let{ignoreImports:s=false}=r,i=e.replace(/\r\n/g,`
|
|
25
25
|
`).trim(),n=t.replace(/\r\n/g,`
|
|
26
|
-
`).trim();if(i===n)return true;if(!s)return false;let o=/^(import\s+(?:type\s+)?(?:\*\s+as\s+\w+|\{[^}]*\}|\w+)?(?:\s*,\s*(?:\{[^}]*\}|\w+))?\s+from\s+["'])([^"']+)(["'])/gm,c=l=>l.replace(o,(u,d,f,p)=>{if(f.startsWith("."))return `${d}${f}${p}`;let y=f.split("/"),m=y[y.length-1];return `${d}@normalized/${m}${p}`}),a=c(i),h=c(n);return a===h}function Re(e){let t=R__default.basename(e);return /^\.env(\.|$)/.test(t)}function
|
|
27
|
-
`),r={};for(let s of t){let i=s.trim();if(!i||i.startsWith("#"))continue;let n=i.indexOf("=");if(n===-1)continue;let o=i.substring(0,n).trim(),c=i.substring(n+1).trim();o&&(r[o]=c.replace(/^["']|["']$/g,""));}return r}function
|
|
26
|
+
`).trim();if(i===n)return true;if(!s)return false;let o=/^(import\s+(?:type\s+)?(?:\*\s+as\s+\w+|\{[^}]*\}|\w+)?(?:\s*,\s*(?:\{[^}]*\}|\w+))?\s+from\s+["'])([^"']+)(["'])/gm,c=l=>l.replace(o,(u,d,f,p)=>{if(f.startsWith("."))return `${d}${f}${p}`;let y=f.split("/"),m=y[y.length-1];return `${d}@normalized/${m}${p}`}),a=c(i),h=c(n);return a===h}function Re(e){let t=R__default.basename(e);return /^\.env(\.|$)/.test(t)}function Us(e){let t=[".env.local",".env",".env.development.local",".env.development"];for(let r of t){let s=R__default.join(e,r);if(existsSync(s))return s}return null}function Pe(e){let t=e.split(`
|
|
27
|
+
`),r={};for(let s of t){let i=s.trim();if(!i||i.startsWith("#"))continue;let n=i.indexOf("=");if(n===-1)continue;let o=i.substring(0,n).trim(),c=i.substring(n+1).trim();o&&(r[o]=c.replace(/^["']|["']$/g,""));}return r}function Ks(e,t){let r=Pe(e),s=Pe(t),i=[];for(let n of Object.keys(s))n in r||i.push(n);return i}function qs(e,t){let r=Pe(e),s=Pe(t),i=e.trimEnd();i&&!i.endsWith(`
|
|
28
28
|
`)&&(i+=`
|
|
29
29
|
`);let n=[];for(let[o,c]of Object.entries(s))o in r||n.push(`${o}=${c}`);return n.length>0?(i&&(i+=`
|
|
30
30
|
`),i+=n.join(`
|
|
31
31
|
`),i+`
|
|
32
32
|
`):i&&!i.endsWith(`
|
|
33
33
|
`)?i+`
|
|
34
|
-
`:i}function Ie(e,t){return pa({text:e,isSilent:t?.silent})}var Tt=async({sourceFile:e,config:t,isRemote:r})=>{let s=t.aliases?.utils,i=typeof s=="string"?ya(s):"@",n=i?`${i}/lib/utils`:"@/lib/utils";if(![".tsx",".ts",".jsx",".js"].includes(e.getExtension()))return e;for(let o of e.getImportStringLiterals()){let c=ga(o.getLiteralValue(),t,r);if(o.setLiteralValue(c),n===c||c==="@/lib/utils"){if(!o.getFirstAncestorByKind(SyntaxKind.ImportDeclaration)?.getNamedImports().some(l=>l.getName()==="cn")||!t.aliases.utils)continue;o.setLiteralValue(n===c?c.replace(n,t.aliases.utils):t.aliases.utils);}}return e};function ga(e,t,r=false){if(e=wa(e,t),!e.startsWith("@/")&&!r)return e;if(r&&e.startsWith("@/")&&(e=e.replace(/^@\//,"@/registry/new-york/")),e==="@/registry")return t.aliases.components;if(!e.startsWith("@/registry/")){if(e==="@/lib/utils"&&t.aliases.utils)return t.aliases.utils;if(t.aliases.ui&&e.match(/^@\/components\/ui(?=\/|$)/))return e.replace(/^@\/components\/ui/,t.aliases.ui);if(t.aliases.components&&e.match(/^@\/components(?=\/|$)/))return e.replace(/^@\/components/,t.aliases.components);if(t.aliases.hooks&&e.match(/^@\/hooks(?=\/|$)/))return e.replace(/^@\/hooks/,t.aliases.hooks);if(t.aliases.lib&&e.match(/^@\/lib(?=\/|$)/))return e.replace(/^@\/lib/,t.aliases.lib);let s=t.aliases.components.split("/")[0];return e.replace(/^@\//,`${s}/`)}return e.match(/^@\/registry\/(.+)\/ui/)?e.replace(/^@\/registry\/(.+)\/ui/,t.aliases.ui??`${t.aliases.components}/ui`):t.aliases.utils&&e.match(/^@\/registry\/(.+)\/lib\/utils$/)?t.aliases.utils:t.aliases.components&&e.match(/^@\/registry\/(.+)\/components/)?e.replace(/^@\/registry\/(.+)\/components/,t.aliases.components):t.aliases.lib&&e.match(/^@\/registry\/(.+)\/lib/)?e.replace(/^@\/registry\/(.+)\/lib/,t.aliases.lib):t.aliases.hooks&&e.match(/^@\/registry\/(.+)\/hooks/)?e.replace(/^@\/registry\/(.+)\/hooks/,t.aliases.hooks):e.replace(/^@\/registry\/[^/]+/,t.aliases.components)}function ya(e){if(e.startsWith("#"))return "";if(e.endsWith("/lib/utils"))return e.slice(0,-10);if(e.startsWith("@")){let[r,s]=e.split("/");return r&&s?`${r}/${s}`:e}let t=e.indexOf("/");return t===-1?e:e.slice(0,t)}function wa(e,t){if(e==="#registry")return "@/registry";if(e.startsWith("#/"))return e.replace(/^#\//,"@/");if(e.startsWith("#registry/"))return e.replace(/^#registry\//,"@/registry/");for(let{alias:r,normalized:s}of xa(t)){if(e===r)return s;if(e.startsWith(`${r}/`))return `${s}${e.slice(r.length)}`}return e}function xa(e){return e.aliases?[{alias:e.aliases.ui,normalized:"@/components/ui"},{alias:e.aliases.components,normalized:"@/components"},{alias:e.aliases.hooks,normalized:"@/hooks"},{alias:e.aliases.lib,normalized:"@/lib"},{alias:e.aliases.utils,normalized:"@/lib/utils"}].filter(t=>typeof t.alias=="string"&&t.alias.startsWith("#")).sort((t,r)=>r.alias.length-t.alias.length):[]}var Ia={sourceType:"module",allowImportExportEverywhere:true,allowReturnOutsideFunction:true,startLine:1,tokens:true,plugins:["asyncGenerators","bigInt","classPrivateMethods","classPrivateProperties","classProperties","classStaticBlock","decimal","decorators-legacy","doExpressions","dynamicImport","exportDefaultFrom","exportNamespaceFrom","functionBind","functionSent","importAssertions","importMeta","nullishCoalescingOperator","numericSeparator","objectRestSpread","optionalCatchBinding","optionalChaining",["pipelineOperator",{proposal:"minimal"}],["recordAndTuple",{syntaxType:"hash"}],"throwExpressions","topLevelAwait","v8intrinsic","typescript","jsx"]},qs=async({sourceFile:e,config:t})=>{let r=e.getFullText();if(t.tsx)return r;let s=Pt.parse(r,{parser:{parse:n=>parse(n,Ia)}}),i=transformFromAstSync(s,r,{cloneInputAst:false,code:false,ast:true,plugins:[Ra],configFile:false});if(!i||!i.ast)throw new Error("Failed to transform JSX");return Pt.print(i.ast).code};var Sa=/^["']use client["']$/g,At=async({sourceFile:e,config:t})=>{if(t.rsc)return e;let r=e.getFirstChildByKind(SyntaxKind.ExpressionStatement);return r&&Sa.test(r.getText())&&r.remove(),e};var Ca=new Set(["cn-font-heading"]),$a=/\bcn-[a-z-]+\b/;function Bs(e){return $a.test(e)&&!Ca.has(e)}function Js(e){return e.split(/\s+/).filter(t=>t.length>0&&!Bs(t)).join(" ")}function Ys(e){return e.split(/\s+/).some(Bs)}function Ot(e){let t=e.getLiteralValue();if(!Ys(t))return;let r=Js(t);r!==t&&e.setLiteralValue(r);}function Xt(e){for(let t of e.getDescendantsOfKind(SyntaxKind.StringLiteral))Ot(t);for(let t of e.getDescendantsOfKind(SyntaxKind.NoSubstitutionTemplateLiteral))Ot(t);}function ka(e){let t=[];for(let r of e.getDescendantsOfKind(SyntaxKind.JsxAttribute)){let s=r.getNameNode().getText();if(s!=="className"&&s!=="classNames")continue;let i=r.getInitializer();if(i?.isKind(SyntaxKind.StringLiteral)){let n=i.getLiteralValue();if(Ys(n)){let o=Js(n);o===""?t.push(r):o!==n&&i.setLiteralValue(o);}}i?.isKind(SyntaxKind.JsxExpression)&&Xt(i);}for(let r of t)r.remove();for(let r of e.getDescendantsOfKind(SyntaxKind.CallExpression))if(r.getExpression().getText()==="cva")for(let s of r.getArguments()){if(s.isKind(SyntaxKind.StringLiteral)){Ot(s);continue}if(s.isKind(SyntaxKind.NoSubstitutionTemplateLiteral)){Ot(s);continue}Xt(s);}for(let r of e.getDescendantsOfKind(SyntaxKind.CallExpression))r.getExpression().getText()==="mergeProps"&&Xt(r);}var jt=async({sourceFile:e})=>(ka(e),e);var _t=async({sourceFile:e,config:t})=>{if(!t.tailwind?.prefix)return e;let r=await kt(t);return e.getDescendantsOfKind(SyntaxKind.CallExpression).filter(s=>s.getExpression().getText()==="cva").forEach(s=>{if(s.getArguments()[0]?.isKind(SyntaxKind.StringLiteral)){let i=s.getArguments()[0];i&&i.replaceWithText(`"${fe(i.getText()?.replace(/"|'/g,""),t.tailwind.prefix,r)}"`);}s.getArguments()[1]?.isKind(SyntaxKind.ObjectLiteralExpression)&&s.getArguments()[1]?.getDescendantsOfKind(SyntaxKind.PropertyAssignment).find(i=>i.getName()==="variants")?.getDescendantsOfKind(SyntaxKind.PropertyAssignment).forEach(i=>{i.getDescendantsOfKind(SyntaxKind.PropertyAssignment).forEach(n=>{let o=n.getInitializerIfKind(SyntaxKind.StringLiteral);o&&o?.replaceWithText(`"${fe(o.getText()?.replace(/"|'/g,""),t.tailwind.prefix,r)}"`);});});}),e.getDescendantsOfKind(SyntaxKind.JsxAttribute).forEach(s=>{if(s.getNameNode().getText()==="className"){if(s.getInitializer()?.isKind(SyntaxKind.StringLiteral)){let i=s.getInitializer();i&&i.replaceWithText(`"${fe(i.getText()?.replace(/"|'/g,""),t.tailwind.prefix,r)}"`);}if(s.getInitializer()?.isKind(SyntaxKind.JsxExpression)){let i=s.getInitializer()?.getDescendantsOfKind(SyntaxKind.CallExpression).find(n=>n.getExpression().getText()==="cn");i&&i.getArguments().forEach(n=>{(n.isKind(SyntaxKind.ConditionalExpression)||n.isKind(SyntaxKind.BinaryExpression))&&n.getChildrenOfKind(SyntaxKind.StringLiteral).forEach(o=>{o.replaceWithText(`"${fe(o.getText()?.replace(/"|'/g,""),t.tailwind.prefix,r)}"`);}),n.isKind(SyntaxKind.StringLiteral)&&n.replaceWithText(`"${fe(n.getText()?.replace(/"|'/g,""),t.tailwind.prefix,r)}"`);});}}s.getNameNode().getText()==="classNames"&&s.getInitializer()?.isKind(SyntaxKind.JsxExpression)&&s.getDescendantsOfKind(SyntaxKind.PropertyAssignment).forEach(i=>{if(i.getInitializer()?.isKind(SyntaxKind.CallExpression)){let n=i.getInitializerIfKind(SyntaxKind.CallExpression);n&&n.getArguments().forEach(o=>{o.isKind(SyntaxKind.ConditionalExpression)&&o.getChildrenOfKind(SyntaxKind.StringLiteral).forEach(c=>{c.replaceWithText(`"${fe(c.getText()?.replace(/"|'/g,""),t.tailwind.prefix,r)}"`);}),o.isKind(SyntaxKind.StringLiteral)&&o.replaceWithText(`"${fe(o.getText()?.replace(/"|'/g,""),t.tailwind.prefix,r)}"`);});}if(i.getInitializer()?.isKind(SyntaxKind.StringLiteral)&&i.getNameNode().getText()!=="variant"){let n=i.getInitializer();n&&n.replaceWithText(`"${fe(n.getText()?.replace(/"|'/g,""),t.tailwind.prefix,r)}"`);}});}),e};function fe(e,t="",r){return r==="v3"?e.split(" ").map(s=>{let[i,n,o]=b(s);return i?o?`${i}:${t}${n}/${o}`:`${i}:${t}${n}`:o?`${t}${n}/${o}`:`${t}${n}`}).join(" "):e.split(" ").map(s=>s.indexOf(`${t}:`)===0?s:`${t}:${s.trim()}`).join(" ")}var ja=new Project({compilerOptions:{}});async function _a(e){let t=await promises.mkdtemp(R__default.join(tmpdir(),"shadcn-"));return R__default.join(t,e)}async function Xs(e,t=[Tt,At,a,_t,d,c,jt]){let r=await _a(e.filename),s=ja.createSourceFile(r,e.raw,{scriptKind:ScriptKind.TSX});for(let i of t)await i({sourceFile:s,...e});return e.transformJsx?await qs({sourceFile:s,...e}):s.getText()}var Na=["a","span","div","Link","label","Label"],Qs=async({sourceFile:e,config:t})=>{if(!t.style?.startsWith("base-"))return e;let r=10;for(let s=0;s<r;s++){let n=e.getDescendantsOfKind(SyntaxKind.JsxElement).filter(a=>a.getOpeningElement().getAttribute("asChild"));if(n.length===0)break;let o=n.filter(a=>!a.getDescendantsOfKind(SyntaxKind.JsxElement).some(l=>l.getOpeningElement().getAttribute("asChild"))),c=[];for(let a of o){let h=a.getOpeningElement(),l=h.getAttribute("asChild");if(!l)continue;let u=h.getTagNameNode().getText(),f=a.getJsxChildren().find(g=>g.getKind()===SyntaxKind.JsxElement||g.getKind()===SyntaxKind.JsxSelfClosingElement);if(!f){l.remove();continue}let p,y,m;if(f.getKind()===SyntaxKind.JsxSelfClosingElement){let g=f.asKindOrThrow(SyntaxKind.JsxSelfClosingElement);p=g.getTagNameNode().getText(),y=g.getAttributes().map(w=>w.getText()).join(" "),m="";}else {let g=f.asKindOrThrow(SyntaxKind.JsxElement),w=g.getOpeningElement();p=w.getTagNameNode().getText(),y=w.getAttributes().map(v=>v.getText()).join(" "),m=g.getJsxChildren().map(v=>v.getText()).join("");}let x=u==="Button"&&Na.includes(p);c.push({parentElement:a,parentTagName:u,childTagName:p,childProps:y,childChildren:m,needsNativeButton:x});}for(let a of c.reverse()){let l=a.parentElement.getOpeningElement().getAttributes().filter(y=>y.getKind()===SyntaxKind.JsxAttribute?y.asKindOrThrow(SyntaxKind.JsxAttribute).getNameNode().getText()!=="asChild":true).map(y=>y.getText()).join(" "),u=a.childProps?`{<${a.childTagName} ${a.childProps} />}`:`{<${a.childTagName} />}`,d=l?`${l} `:"";d+=`render=${u}`,a.needsNativeButton&&(d+=" nativeButton={false}");let f=a.childChildren.trim()?`${a.childChildren}`:"",p=`<${a.parentTagName} ${d}>${f}</${a.parentTagName}>`;a.parentElement.replaceWithText(p);}}return e};var ei=async({sourceFile:e})=>(e.getFunctions().forEach(t=>{t.getName()==="middleware"&&t.rename("proxy");}),e.getVariableDeclarations().forEach(t=>{t.getName()==="middleware"&&t.rename("proxy");}),e.getExportDeclarations().forEach(t=>{t.getNamedExports().forEach(s=>{s.getName()==="middleware"&&s.setName("proxy"),s.getAliasNode()?.getText()==="middleware"&&s.setAlias("proxy");});}),e);var er=[".ts",".tsx",".js",".jsx"],Fa=new Set(["tailwindConfig","tailwindCss"]),Da=["components","ui","lib","hooks"];async function Cp(e,t,r){if(!e?.length)return {filesCreated:[],filesUpdated:[],filesSkipped:[]};r={overwrite:false,force:false,silent:false,isRemote:false,isWorkspace:false,...r};let s=Ie("Updating files.",{silent:r.silent})?.start(),[i,n]=await Promise.all([re(t.resolvedPaths.cwd),t.tailwind.baseColor?Lt(t.tailwind.baseColor):Promise.resolve(void 0)]),o=loadConfig(t.resolvedPaths.cwd),c$1=Ka(r.plannedFiles??e,t,{isSrcDir:i?.isSrcDir,framework:i?.framework.name,path:r.path}),a$1=new Project({compilerOptions:{}}),h=[],l=[],u=[],d$1=[],f=null;for(let x=0;x<e.length;x++){let g$1=e[x];if(!g$1.content)continue;let w=Nt(g$1,t,{isSrcDir:i?.isSrcDir,framework:i?.framework.name,commonRoot:Mt(e.map($=>$.path),g$1.path),path:r.path,fileIndex:x});if(!w)continue;let v=basename(g$1.path),b=R__default.dirname(w);if(t.tsx||(w=w.replace(/\.tsx?$/,$=>$===".tsx"?".jsx":".js")),Re(w)&&!existsSync(w)){let $=Gs(b);$&&(w=$);}let I=existsSync(w);if(g$1.type==="registry:lib"&&basename(g$1.path)==="utils.ts"&&i?.framework.name==="laravel"&&I){u.push(R__default.relative(t.resolvedPaths.cwd,w));continue}if(I&&statSync(w).isDirectory())throw new Error(`Cannot write to ${w}: path exists and is a directory. Please provide a file path instead.`);let P=g$1.type==="registry:file"||g$1.type==="registry:item",k=Re(w)||P?g$1.content:await Xs({filename:g$1.path,raw:g$1.content,config:t,baseColor:n,transformJsx:!t.tsx,isRemote:r.isRemote,supportedFontMarkers:r.supportedFontMarkers},[Tt,At,a,_t,c,g,Qs,d,...ti(w,i,t)?[ei]:[],f$1,jt]);if(I&&!Re(w)){let $=await oi({config:t,content:k,filePaths:c$1,project:a$1,projectInfo:i,resolvedPath:w,tsConfig:o}),Q=await promises.readFile(w,"utf-8");if(zs(Q,$,{ignoreImports:r.isWorkspace})){u.push(R__default.relative(t.resolvedPaths.cwd,w));continue}}if(I&&!r.overwrite&&!Re(w)){s.stop(),r.rootSpinner&&r.rootSpinner.stop();let{overwrite:$}=await La({type:"confirm",name:"overwrite",message:`The file ${T.info(v)} already exists. Would you like to overwrite?`,initial:false});if(!$){u.push(R__default.relative(t.resolvedPaths.cwd,w)),r.rootSpinner&&r.rootSpinner.start();continue}s?.start(),r.rootSpinner&&r.rootSpinner.start();}if(ti(w,i,t)&&(w=w.replace(/middleware\.(ts|js)$/,"proxy.$1")),existsSync(b)||await promises.mkdir(b,{recursive:true}),Re(w)&&I){let $=await promises.readFile(w,"utf-8"),Q=Ks($,k);if(d$1=Us($,k),f=R__default.relative(t.resolvedPaths.cwd,w),!d$1.length){u.push(R__default.relative(t.resolvedPaths.cwd,w));continue}await promises.writeFile(w,Q,"utf-8"),l.push(R__default.relative(t.resolvedPaths.cwd,w));continue}await promises.writeFile(w,k,"utf-8"),I?l.push(R__default.relative(t.resolvedPaths.cwd,w)):(h.push(R__default.relative(t.resolvedPaths.cwd,w)),Re(w)&&(d$1=Object.keys(Pe(k)),f=R__default.relative(t.resolvedPaths.cwd,w)));}let p=[...h,...l,...u],y=await Ua(p,t,c$1);if(l.push(...y),h=Array.from(new Set(h)),l=Array.from(new Set(l.filter(x=>!h.includes(x)))),u=Array.from(new Set(u)),!(h.length||l.length)&&!u.length&&s?.info("No files updated."),h.length){if(s?.succeed(`Created ${h.length} ${h.length===1?"file":"files"}:`),!r.silent)for(let x of h)S.log(` - ${x}`);}else s?.stop();if(l.length&&(Ie(`Updated ${l.length} ${l.length===1?"file":"files"}:`,{silent:r.silent})?.info(),!r.silent))for(let x of l)S.log(` - ${x}`);if(u.length&&(Ie(`Skipped ${u.length} ${u.length===1?"file":"files"}: (files might be identical, use --overwrite to overwrite)`,{silent:r.silent})?.info(),!r.silent))for(let x of u)S.log(` - ${x}`);if(d$1.length&&f&&(Ie(`Added the following variables to ${T.info(f)}:`)?.info(),!r.silent))for(let x of d$1)S.log(` ${T.success("+")} ${x}`);return {filesCreated:h,filesUpdated:l,filesSkipped:u}}function Nt(e,t,r){if(r.path){let n=R__default.isAbsolute(r.path)?r.path:R__default.join(t.resolvedPaths.cwd,r.path);if(/\.[^/\\]+$/.test(n)){if(r.fileIndex===0)return n}else {let c=R__default.basename(e.path);return R__default.join(n,c)}}if(e.target){if(e.target.startsWith("~/"))return R__default.join(t.resolvedPaths.cwd,e.target.replace("~/",""));let n=e.target,o=Wa(n,t);return o?.resolvedPath?o.resolvedPath:(o?.target&&(n=o.target),e.type==="registry:page"&&(n=Ga(n,r.framework),!n)?"":r.isSrcDir?R__default.join(t.resolvedPaths.cwd,"src",n.replace("src/","")):R__default.join(t.resolvedPaths.cwd,n.replace("src/","")))}let s=za(e,t),i=Va(e.path,s);return R__default.join(s,i)}function Wa(e,t){let r=e.match(/^@([^/]+)\/(.+)$/);if(!r)return null;let[,s,i]=r;if(!Ha(s))return {target:`${s}/${i}`};let n=R__default.resolve(t.resolvedPaths[s]),o=R__default.resolve(n,i);if(o!==n&&!o.startsWith(`${n}${R__default.sep}`))throw new Error(`Invalid target path "${e}". Target paths using @${s}/ must stay within the ${s} alias root.`);return {resolvedPath:o}}function Ha(e){return Da.includes(e)}function za(e,t){return e.type==="registry:ui"?t.resolvedPaths.ui:e.type==="registry:lib"?t.resolvedPaths.lib:e.type==="registry:block"||e.type==="registry:component"?t.resolvedPaths.components:e.type==="registry:hook"?t.resolvedPaths.hooks:t.resolvedPaths.components}function Mt(e,t){let r=e.map(o=>o.replace(/^\//,"")),s=t.replace(/^\//,""),i=s.split("/").slice(0,-1).join("/");if(!i)return "";let n=i.split("/");for(let o=n.length;o>0;o--){let c=n.slice(0,o).join("/");if(r.some(h=>h!==s&&h.startsWith(c+"/")))return "/"+c}return "/"+i}function Va(e,t){let r=e.replace(/^\/|\/$/g,""),s=t.replace(/^\/|\/$/g,""),i=r.split("/"),n=s.split("/"),o=n[n.length-1],c=i.findIndex(a=>a===o);return c===-1?i[i.length-1]:i.slice(c+1).join("/")}function Ga(e,t){if(!t)return "";if(t==="next-app")return e;if(t==="next-pages"){let r=e.replace(/^app\//,"pages/");return r=r.replace(/\/page(\.[jt]sx?)$/,"$1"),r}if(t==="react-router"){let r=e.replace(/^app\//,"app/routes/");return r=r.replace(/\/page(\.[jt]sx?)$/,"$1"),r}if(t==="laravel"){let r=e.replace(/^app\//,"resources/js/pages/");return r=r.replace(/\/page(\.[jt]sx?)$/,"$1"),r}return ""}async function Ua(e,t,r=e){let s=new Project({compilerOptions:{}}),i=await re(t.resolvedPaths.cwd),n=loadConfig(t.resolvedPaths.cwd),o=[];if(!i||n.resultType==="failed")return [];for(let c of e){let a=R__default.resolve(t.resolvedPaths.cwd,c);if(!existsSync(a))continue;let h=await promises.readFile(a,"utf-8"),l=await promises.mkdtemp(R__default.join(tmpdir(),"shadcn-")),u=s.createSourceFile(R__default.join(l,basename(a)),h,{scriptKind:ScriptKind.TSX});if(![".tsx",".ts",".jsx",".js"].includes(u.getExtension()))continue;let d=await oi({config:t,content:h,filePaths:r,project:s,projectInfo:i,resolvedPath:a,sourceFile:u,tsConfig:n});d!==h&&(await promises.writeFile(a,d,"utf-8"),o.push(c));}return o}function Ka(e,t,r){return (e??[])?.filter(s=>!!s?.content).map((s,i)=>{let n=Nt(s,t,{isSrcDir:r.isSrcDir,framework:r.framework,commonRoot:Mt((e??[]).map(o=>o.path),s.path),path:r.path,fileIndex:i});return n?(t.tsx||(n=n.replace(/\.tsx?$/,o=>o===".tsx"?".jsx":".js")),R__default.relative(t.resolvedPaths.cwd,n)):null}).filter(s=>!!s)}async function oi({content:e,resolvedPath:t,filePaths:r,config:s,projectInfo:i,tsConfig:n,project:o,sourceFile:c}){if(!i||n.resultType==="failed")return e;let a=R__default.extname(t);if(![".tsx",".ts",".jsx",".js"].includes(a))return e;let h=c===void 0?o.createSourceFile(R__default.join(tmpdir(),`shadcn-${Math.random().toString(36).slice(2)}${a||".tsx"}`),e,{scriptKind:ScriptKind.TSX,overwrite:true}):null,l=c??h;try{let u=!1;for(let d of l.getImportDeclarations()){let f=d.getModuleSpecifierValue();if(!Zt(f,i.aliasPrefix??null))continue;let p=await qa(f,r,s,n);if(!p)continue;let y=Ja(p,s,i,t);!y||y===f||(d.setModuleSpecifier(y),u=!0);}return u?l.getFullText():e}finally{h&&o.removeSourceFile(h);}}async function qa(e,t,r,s){let i=(await Be(e,{...s,cwd:r.resolvedPaths.cwd}))?.path,n=!i&&!e.startsWith(".")?Za(e,r):null;return !i&&!n?null:Ba(i??n,t,r)}function Ba(e,t,r,s=[".tsx",".ts",".js",".jsx",".css"]){let i=R__default.normalize(r.resolvedPaths.cwd),n=t.map(m=>m.split(R__default.sep).join(R__default.posix.sep)),o=new Set(n),c=R__default.extname(e),a=c!=="",h=a?e.slice(0,-c.length):e,u=R__default.relative(i,h).split(R__default.sep).join(R__default.posix.sep),d=a?[c]:s,f=new Set;for(let m of d){let x=h+m,g=R__default.posix.normalize(R__default.relative(i,x));(o.has(g)||existsSync(x))&&f.add(g);let w=R__default.join(h,`index${m}`),v=R__default.posix.normalize(R__default.relative(i,w));(o.has(v)||existsSync(w))&&f.add(v);}let p=R__default.basename(h);for(let m of n)d.some(x=>m.endsWith(`/${p}${x}`))&&f.add(m);return f.size===0?null:Array.from(f).sort((m,x)=>{let g=R__default.posix.extname(m),w=R__default.posix.extname(x),v=d.indexOf(g)-d.indexOf(w);if(v!==0)return v;let b=u&&m.startsWith(u)?-1:1,I=u&&x.startsWith(u)?-1:1;return b-I})[0]}function Ja(e,t,r,s){let i=R__default.normalize(R__default.join(t.resolvedPaths.cwd,e)),n=Object.entries(t.resolvedPaths).filter(([p,y])=>{if(!y||Fa.has(p))return false;let m=R__default.normalize(y);if(i===m){let x=t.aliases[p];if(typeof x!="string"||!x.startsWith("#"))return true;let g=qe(x,t.resolvedPaths.cwd);return g!==null&&!g.matchedAlias.includes("*")}return i.startsWith(R__default.normalize(y+R__default.sep))}).sort((p,y)=>y[1].length-p[1].length);if(n.length===0)return null;let[o,c]=n[0],a=R__default.relative(c,i);a=a.split(R__default.sep).join("/");let h=o==="cwd"?r.aliasPrefix:t.aliases[o];if(!h)return null;if(h.startsWith("#")){let p=qe(h,t.resolvedPaths.cwd);if(p)return Ya(h,a,p)??(s?Qa(s,i):null)}let l=R__default.posix.extname(a),u=er.includes(l)?"":l,d=a.slice(0,a.length-l.length);d.endsWith("/index")&&(d=d.slice(0,-6));let f=d===""?"":`/${d}`;return f=f.replace("/src",""),`${h}${f}${u}`}function Ya(e,t,r){let s=R__default.posix.extname(t),i=er.includes(s)&&r.emitMode==="strip_extension"?"":s,n=t?t.slice(0,t.length-s.length)+i:"";return r.matchedAlias.includes("*")?n?`${e}/${n}`:e:n===""||n==="index"?e:null}function Za(e,t){let r=Xa(t);for(let s of r){if(e===s.alias||e===s.canonical)return s.rootPath;if(e.startsWith(`${s.alias}/`))return R__default.join(s.rootPath,e.slice(s.alias.length+1));if(e.startsWith(`${s.canonical}/`))return R__default.join(s.rootPath,e.slice(s.canonical.length+1))}return null}function Xa(e){return [{alias:e.aliases.ui,canonical:"@/components/ui",rootPath:e.resolvedPaths.ui},{alias:e.aliases.components,canonical:"@/components",rootPath:e.resolvedPaths.components},{alias:e.aliases.hooks,canonical:"@/hooks",rootPath:e.resolvedPaths.hooks},{alias:e.aliases.lib,canonical:"@/lib",rootPath:e.resolvedPaths.lib},{alias:e.aliases.utils,canonical:"@/lib/utils",rootPath:e.resolvedPaths.utils}].filter(t=>typeof t.alias=="string"&&typeof t.rootPath=="string").sort((t,r)=>r.alias.length-t.alias.length||r.canonical.length-t.canonical.length)}function Qa(e,t){let r=R__default.relative(R__default.dirname(e),t);r=r.split(R__default.sep).join("/");let s=R__default.posix.extname(r),i=er.includes(s)?"":s,n=r.slice(0,r.length-s.length);return n.endsWith("/index")&&(n=n.slice(0,-6)),n.startsWith(".")||(n=`./${n}`),`${n}${i}`}function ti(e,t,r){let s=e===R__default.join(r.resolvedPaths.cwd,"middleware.ts")||e===R__default.join(r.resolvedPaths.cwd,"middleware.js"),i=t?.framework.name==="next-app"||t?.framework.name==="next-pages";if(!s||!i||!t?.frameworkVersion)return false;let n=parseInt(t.frameworkVersion.split(".")[0]);return !isNaN(n)&&n>=16}new Project({compilerOptions:{}});function _(e){try{return new URL(e),!0}catch{return false}}function pe(e){return e.endsWith(".json")&&!_(e)}function Hp(e){return !e||e.type!=="registry:item"&&e.type!=="registry:file"?false:(e.files??[]).every(r=>!!r.target&&(r.type==="registry:file"||r.type==="registry:item"))}async function ci(e,t){if(!tc(t))return z$1.array(g$1).parse(e.flat().filter(Boolean));let r=await re(t.resolvedPaths.cwd),s=new Map,i=z$1.array(g$1).parse(e.flat().filter(Boolean));return i.forEach(n=>{let o=Nt(n,t,{isSrcDir:r?.isSrcDir,framework:r?.framework.name,commonRoot:Mt(i.map(c=>c.path),n.path)});o&&s.set(o,n);}),Array.from(s.values())}function tc(e){return !!(e?.resolvedPaths?.cwd&&(e?.resolvedPaths?.ui||e?.resolvedPaths?.lib||e?.resolvedPaths?.components||e?.resolvedPaths?.hooks))}var rc=/^(?!.*--)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,37}[a-zA-Z0-9])?$/,sc=/^[a-zA-Z0-9._-]+$/,ic=new Set([".",".."]),nc=/[\x00-\x1F\x7F]/,oc=/\s/,ac=/^-/;function Ze(e){if(_(e))return {scheme:"url",url:e};if(pe(e))return {scheme:"file",path:e};let{registry:t,item:r}=ce(e);if(t)return {scheme:"namespace",namespace:t,item:r};let s=cc(e);return s||{scheme:"shadcn",item:e}}function Ft(e){return Ze(e).scheme==="github"}function Xe(e){let t=e.indexOf("#"),r=t===-1?e:e.slice(0,t),s=t===-1?void 0:e.slice(t+1),i=r.split("/");if(i.length!==2)return null;let[n,o]=i;if(!ui(n)||!hi(o))return null;if(s!==void 0&&!fi(s))throw new C(`Invalid GitHub ref in registry source "${e}".`,{context:{source:e,ref:s},suggestion:"Use a non-empty branch, tag, or commit SHA without whitespace, control characters or leading dashes."});return {owner:n,repo:o,ref:s}}function li(e){return Xe(e)!==null}function cc(e){let t=e.indexOf("#"),r=t===-1?e:e.slice(0,t),s=t===-1?void 0:e.slice(t+1),i=r.split("/");if(i.length<3)return null;let[n,o,...c]=i;if(!ui(n)||!hi(o))return null;let a=c.join("/");if(!a)return null;if(s!==void 0&&!fi(s))throw new C(`Invalid GitHub ref in item address "${e}".`,{context:{address:e,ref:s},suggestion:"Use a non-empty branch, tag, or commit SHA without whitespace, control characters or leading dashes."});return {scheme:"github",owner:n,repo:o,item:a,ref:s}}function ui(e){return rc.test(e)}function hi(e){return sc.test(e)&&!ic.has(e)}function fi(e){return !!e&&!nc.test(e)&&!oc.test(e)&&!ac.test(e)}function Qe(e){return e.replace(/\${(\w+)}/g,(t,r)=>process.env[r]||"")}function et(e){let t=[],r=/\${(\w+)}/g,s;for(;(s=r.exec(e))!==null;)t.push(s[1]);return t}function uc(e){return e.style?e.style==="new-york"&&e.tailwind?.config===""?pt:e.style:pt}function Oe(e){let t=Ds({style:pt,registries:D});return e?d$1.parse(_e(t,{...e,style:uc(e),registries:{...D,...e.registries}})):t}var Dt={headers:{}};function tt(e){Dt.headers={...Dt.headers,...e};}function di(e){return Dt.headers[e]||{}}function Ee(){Dt.headers={};}function hc(e){let t=new Set;return typeof e=="string"?et(e).forEach(r=>t.add(r)):(et(e.url).forEach(r=>t.add(r)),e.params&&Object.values(e.params).forEach(r=>{et(r).forEach(s=>t.add(s));}),e.headers&&Object.values(e.headers).forEach(r=>{et(r).forEach(s=>t.add(s));})),Array.from(t)}function pi(e,t){let s=hc(t).filter(i=>!process.env[i]);if(s.length>0)throw new Ve(e,s)}function cm(e,t){for(let r of e)li(r)||je(r,Oe(t));Ee();}var mi="{name}",Wt="{style}",gi=/\${(\w+)}/g,yi="?",fc="&";function dc(e){return e.startsWith("./")||e.startsWith("/")}function je(e,t){let{registry:r,item:s}=ce(e);if(!r){if(_(e)||pe(e)||dc(e)||Ft(e))return null;r="@shadcn";}let n={...D,...t?.registries}[r];if(!n)throw new ae(r);return pi(r,n),{url:pc(s,n,t),headers:mc(n)}}function pc(e,t,r){if(typeof t=="string"){let i=t.replace(mi,e);return r?.style&&i.includes(Wt)&&(i=i.replace(Wt,r.style)),Qe(i)}let s=t.url.replace(mi,e);return r?.style&&s.includes(Wt)&&(s=s.replace(Wt,r.style)),s=Qe(s),t.params?gc(s,t.params):s}function mc(e){if(typeof e=="string"||!e.headers)return {};let t={};for(let[r,s]of Object.entries(e.headers)){let i=Qe(s);yc(s,i)&&(t[r]=i);}return t}function gc(e,t){let r=new URLSearchParams;for(let[n,o]of Object.entries(t)){let c=Qe(o);c&&r.append(n,c);}let s=r.toString();if(!s)return e;let i=e.includes(yi)?fc:yi;return `${e}${i}${s}`}function yc(e,t){let r=t.trim();if(!r)return false;if(e.includes("${")&&e.match(gi)){let i=e.replace(gi,"").trim();return r!==i}return true}function Ht(e){if(_(e)){let t=new URL(e);return t.pathname.match(/\/chat\/b\//)&&!t.pathname.endsWith("/json")&&(t.pathname=`${t.pathname}/json`),t.toString()}return `${xe}/${e}`}var Ic=process.env.https_proxy?new HttpsProxyAgent(process.env.https_proxy):void 0,tr=new Map;async function L(e,t={}){t={useCache:true,...t};try{return await Promise.all(e.map(async s=>{let i=Ht(s);if(t.useCache&&tr.has(i))return tr.get(i);let n=(async()=>{let o=di(i),c=new Headers({Accept:"application/vnd.shadcn.v1+json, application/json;q=0.9","User-Agent":"shadcn"});for(let[h,l]of Object.entries(o))c.set(h,l);let a=await bc(i,{agent:Ic,headers:c});if(!a.ok){let h;if(a.headers.get("content-type")?.includes("application/json")){let l=await a.json(),u=z$1.object({detail:z$1.string().optional(),title:z$1.string().optional(),message:z$1.string().optional(),error:z$1.string().optional()}).safeParse(l);u.success&&(h=u.data.detail||u.data.message,u.data.error&&(h=`[${u.data.error}] ${h}`));}throw a.status===401?new We(i,h):a.status===404?new ve(i,h):a.status===410?new mt(i,h):a.status===403?new He(i,h):new ze(i,a.status,h)}return a.json()})();return t.useCache&&tr.set(i,n),n}))}catch(r){throw r}}async function xi(e){try{let t=e;e.startsWith("~/")&&(t=R__default.join(homedir(),e.slice(2)));let r=R__default.resolve(t),s=await promises.readFile(r,"utf8"),i=JSON.parse(s);try{return n.parse(i)}catch(n){throw new M(e,n)}}catch(t){throw t instanceof Error&&(t.message.includes("ENOENT")||t.message.includes("no such file"))?new ee(e,t):t instanceof M?t:new ee(e,t)}}var Sc="https://github.com",vi=/^[a-fA-F0-9]{40}$/,Cc=15e3;async function bi(e,t={}){let r=e.ref??"HEAD";if(vi.test(r))return r.toLowerCase();let s=`${e.owner}/${e.repo}#${r}`;if(t.cache?.has(s))return t.cache.get(s);let i=$c(e,r).catch(n=>{throw t.cache?.delete(s),n});return t.cache?.set(s,i),i}async function $c(e,t){let r=`${Sc}/${e.owner}/${e.repo}.git`,s=kc(t),i;try{i=(await execa("git",["ls-remote","--symref","--",r,...s],{env:{GIT_TERMINAL_PROMPT:"0"},timeout:Cc})).stdout;}catch(o){throw Pc(e,t,r,o)}let n=Tc(i);for(let o of Ri(t)){let c=n.get(o);if(c)return c}throw new H("registry.json",void 0,{message:`Could not resolve GitHub ref "${t}" for ${e.owner}/${e.repo}.`,context:{reason:"github-ref-resolution",source:Ii(e),ref:t,repoUrl:r},suggestion:'Use an existing branch, tag, or full commit SHA. For example: "owner/repo/item#main" or "owner/repo/item#v1.0.0".'})}function kc(e){return Array.from(new Set(Ri(e)))}function Ri(e){return e==="HEAD"?["HEAD"]:e.startsWith("refs/tags/")?[`${e}^{}`,e]:e.startsWith("refs/")?[e]:[`refs/heads/${e}`,`refs/tags/${e}^{}`,`refs/tags/${e}`,e]}function Tc(e){let t=new Map;for(let r of e.split(`
|
|
35
|
-
`)){let s=r.trim();if(!s||s.startsWith("ref:"))continue;let[i,n]=s.split(/\s+/);i&&n&&
|
|
34
|
+
`:i}function Ee(e,t){return ga({text:e,isSilent:t?.silent})}var Tt=async({sourceFile:e,config:t,isRemote:r})=>{let s=t.aliases?.utils,i=typeof s=="string"?xa(s):"@",n=i?`${i}/lib/utils`:"@/lib/utils";if(![".tsx",".ts",".jsx",".js"].includes(e.getExtension()))return e;for(let o of e.getImportStringLiterals()){let c=wa(o.getLiteralValue(),t,r);if(o.setLiteralValue(c),n===c||c==="@/lib/utils"){if(!o.getFirstAncestorByKind(SyntaxKind.ImportDeclaration)?.getNamedImports().some(l=>l.getName()==="cn")||!t.aliases.utils)continue;o.setLiteralValue(n===c?c.replace(n,t.aliases.utils):t.aliases.utils);}}return e};function wa(e,t,r=false){if(e=va(e,t),!e.startsWith("@/")&&!r)return e;if(r&&e.startsWith("@/")&&(e=e.replace(/^@\//,"@/registry/new-york/")),e==="@/registry")return t.aliases.components;if(!e.startsWith("@/registry/")){if(e==="@/lib/utils"&&t.aliases.utils)return t.aliases.utils;if(t.aliases.ui&&e.match(/^@\/components\/ui(?=\/|$)/))return e.replace(/^@\/components\/ui/,t.aliases.ui);if(t.aliases.components&&e.match(/^@\/components(?=\/|$)/))return e.replace(/^@\/components/,t.aliases.components);if(t.aliases.hooks&&e.match(/^@\/hooks(?=\/|$)/))return e.replace(/^@\/hooks/,t.aliases.hooks);if(t.aliases.lib&&e.match(/^@\/lib(?=\/|$)/))return e.replace(/^@\/lib/,t.aliases.lib);let s=t.aliases.components.split("/")[0];return e.replace(/^@\//,`${s}/`)}return e.match(/^@\/registry\/(.+)\/ui/)?e.replace(/^@\/registry\/(.+)\/ui/,t.aliases.ui??`${t.aliases.components}/ui`):t.aliases.utils&&e.match(/^@\/registry\/(.+)\/lib\/utils$/)?t.aliases.utils:t.aliases.components&&e.match(/^@\/registry\/(.+)\/components/)?e.replace(/^@\/registry\/(.+)\/components/,t.aliases.components):t.aliases.lib&&e.match(/^@\/registry\/(.+)\/lib/)?e.replace(/^@\/registry\/(.+)\/lib/,t.aliases.lib):t.aliases.hooks&&e.match(/^@\/registry\/(.+)\/hooks/)?e.replace(/^@\/registry\/(.+)\/hooks/,t.aliases.hooks):e.replace(/^@\/registry\/[^/]+/,t.aliases.components)}function xa(e){if(e.startsWith("#"))return "";if(e.endsWith("/lib/utils"))return e.slice(0,-10);if(e.startsWith("@")){let[r,s]=e.split("/");return r&&s?`${r}/${s}`:e}let t=e.indexOf("/");return t===-1?e:e.slice(0,t)}function va(e,t){if(e==="#registry")return "@/registry";if(e.startsWith("#/"))return e.replace(/^#\//,"@/");if(e.startsWith("#registry/"))return e.replace(/^#registry\//,"@/registry/");for(let{alias:r,normalized:s}of ba(t)){if(e===r)return s;if(e.startsWith(`${r}/`))return `${s}${e.slice(r.length)}`}return e}function ba(e){return e.aliases?[{alias:e.aliases.ui,normalized:"@/components/ui"},{alias:e.aliases.components,normalized:"@/components"},{alias:e.aliases.hooks,normalized:"@/hooks"},{alias:e.aliases.lib,normalized:"@/lib"},{alias:e.aliases.utils,normalized:"@/lib/utils"}].filter(t=>typeof t.alias=="string"&&t.alias.startsWith("#")).sort((t,r)=>r.alias.length-t.alias.length):[]}var Sa={sourceType:"module",allowImportExportEverywhere:true,allowReturnOutsideFunction:true,startLine:1,tokens:true,plugins:["asyncGenerators","bigInt","classPrivateMethods","classPrivateProperties","classProperties","classStaticBlock","decimal","decorators-legacy","doExpressions","dynamicImport","exportDefaultFrom","exportNamespaceFrom","functionBind","functionSent","importAssertions","importMeta","nullishCoalescingOperator","numericSeparator","objectRestSpread","optionalCatchBinding","optionalChaining",["pipelineOperator",{proposal:"minimal"}],["recordAndTuple",{syntaxType:"hash"}],"throwExpressions","topLevelAwait","v8intrinsic","typescript","jsx"]},Bs=async({sourceFile:e,config:t})=>{let r=e.getFullText();if(t.tsx)return r;let s=Pt.parse(r,{parser:{parse:n=>parse(n,Sa)}}),i=transformFromAstSync(s,r,{cloneInputAst:false,code:false,ast:true,plugins:[Ia],configFile:false});if(!i||!i.ast)throw new Error("Failed to transform JSX");return Pt.print(i.ast).code};var $a=/^["']use client["']$/g,At=async({sourceFile:e,config:t})=>{if(t.rsc)return e;let r=e.getFirstChildByKind(SyntaxKind.ExpressionStatement);return r&&$a.test(r.getText())&&r.remove(),e};var ka=new Set(["cn-font-heading"]),Ta=/\bcn-[a-z-]+\b/;function Js(e){return Ta.test(e)&&!ka.has(e)}function Ys(e){return e.split(/\s+/).filter(t=>t.length>0&&!Js(t)).join(" ")}function Zs(e){return e.split(/\s+/).some(Js)}function Ot(e){let t=e.getLiteralValue();if(!Zs(t))return;let r=Ys(t);r!==t&&e.setLiteralValue(r);}function Qt(e){for(let t of e.getDescendantsOfKind(SyntaxKind.StringLiteral))Ot(t);for(let t of e.getDescendantsOfKind(SyntaxKind.NoSubstitutionTemplateLiteral))Ot(t);}function Pa(e){let t=[];for(let r of e.getDescendantsOfKind(SyntaxKind.JsxAttribute)){let s=r.getNameNode().getText();if(s!=="className"&&s!=="classNames")continue;let i=r.getInitializer();if(i?.isKind(SyntaxKind.StringLiteral)){let n=i.getLiteralValue();if(Zs(n)){let o=Ys(n);o===""?t.push(r):o!==n&&i.setLiteralValue(o);}}i?.isKind(SyntaxKind.JsxExpression)&&Qt(i);}for(let r of t)r.remove();for(let r of e.getDescendantsOfKind(SyntaxKind.CallExpression))if(r.getExpression().getText()==="cva")for(let s of r.getArguments()){if(s.isKind(SyntaxKind.StringLiteral)){Ot(s);continue}if(s.isKind(SyntaxKind.NoSubstitutionTemplateLiteral)){Ot(s);continue}Qt(s);}for(let r of e.getDescendantsOfKind(SyntaxKind.CallExpression))r.getExpression().getText()==="mergeProps"&&Qt(r);}var jt=async({sourceFile:e})=>(Pa(e),e);var _t=async({sourceFile:e,config:t})=>{if(!t.tailwind?.prefix)return e;let r=await kt(t);return e.getDescendantsOfKind(SyntaxKind.CallExpression).filter(s=>s.getExpression().getText()==="cva").forEach(s=>{if(s.getArguments()[0]?.isKind(SyntaxKind.StringLiteral)){let i=s.getArguments()[0];i&&i.replaceWithText(`"${fe(i.getText()?.replace(/"|'/g,""),t.tailwind.prefix,r)}"`);}s.getArguments()[1]?.isKind(SyntaxKind.ObjectLiteralExpression)&&s.getArguments()[1]?.getDescendantsOfKind(SyntaxKind.PropertyAssignment).find(i=>i.getName()==="variants")?.getDescendantsOfKind(SyntaxKind.PropertyAssignment).forEach(i=>{i.getDescendantsOfKind(SyntaxKind.PropertyAssignment).forEach(n=>{let o=n.getInitializerIfKind(SyntaxKind.StringLiteral);o&&o?.replaceWithText(`"${fe(o.getText()?.replace(/"|'/g,""),t.tailwind.prefix,r)}"`);});});}),e.getDescendantsOfKind(SyntaxKind.JsxAttribute).forEach(s=>{if(s.getNameNode().getText()==="className"){if(s.getInitializer()?.isKind(SyntaxKind.StringLiteral)){let i=s.getInitializer();i&&i.replaceWithText(`"${fe(i.getText()?.replace(/"|'/g,""),t.tailwind.prefix,r)}"`);}if(s.getInitializer()?.isKind(SyntaxKind.JsxExpression)){let i=s.getInitializer()?.getDescendantsOfKind(SyntaxKind.CallExpression).find(n=>n.getExpression().getText()==="cn");i&&i.getArguments().forEach(n=>{(n.isKind(SyntaxKind.ConditionalExpression)||n.isKind(SyntaxKind.BinaryExpression))&&n.getChildrenOfKind(SyntaxKind.StringLiteral).forEach(o=>{o.replaceWithText(`"${fe(o.getText()?.replace(/"|'/g,""),t.tailwind.prefix,r)}"`);}),n.isKind(SyntaxKind.StringLiteral)&&n.replaceWithText(`"${fe(n.getText()?.replace(/"|'/g,""),t.tailwind.prefix,r)}"`);});}}s.getNameNode().getText()==="classNames"&&s.getInitializer()?.isKind(SyntaxKind.JsxExpression)&&s.getDescendantsOfKind(SyntaxKind.PropertyAssignment).forEach(i=>{if(i.getInitializer()?.isKind(SyntaxKind.CallExpression)){let n=i.getInitializerIfKind(SyntaxKind.CallExpression);n&&n.getArguments().forEach(o=>{o.isKind(SyntaxKind.ConditionalExpression)&&o.getChildrenOfKind(SyntaxKind.StringLiteral).forEach(c=>{c.replaceWithText(`"${fe(c.getText()?.replace(/"|'/g,""),t.tailwind.prefix,r)}"`);}),o.isKind(SyntaxKind.StringLiteral)&&o.replaceWithText(`"${fe(o.getText()?.replace(/"|'/g,""),t.tailwind.prefix,r)}"`);});}if(i.getInitializer()?.isKind(SyntaxKind.StringLiteral)&&i.getNameNode().getText()!=="variant"){let n=i.getInitializer();n&&n.replaceWithText(`"${fe(n.getText()?.replace(/"|'/g,""),t.tailwind.prefix,r)}"`);}});}),e};function fe(e,t="",r){return r==="v3"?e.split(" ").map(s=>{let[i,n,o]=b(s);return i?o?`${i}:${t}${n}/${o}`:`${i}:${t}${n}`:o?`${t}${n}/${o}`:`${t}${n}`}).join(" "):e.split(" ").map(s=>s.indexOf(`${t}:`)===0?s:`${t}:${s.trim()}`).join(" ")}var Na=new Project({compilerOptions:{}});async function Ma(e){let t=await promises.mkdtemp(R__default.join(tmpdir(),"shadcn-"));return R__default.join(t,e)}async function Qs(e,t=[Tt,At,a,_t,d,c,jt]){let r=await Ma(e.filename),s=Na.createSourceFile(r,e.raw,{scriptKind:ScriptKind.TSX});for(let i of t)await i({sourceFile:s,...e});return e.transformJsx?await Bs({sourceFile:s,...e}):s.getText()}var La=["a","span","div","Link","label","Label"],ei=async({sourceFile:e,config:t})=>{if(!t.style?.startsWith("base-"))return e;let r=10;for(let s=0;s<r;s++){let n=e.getDescendantsOfKind(SyntaxKind.JsxElement).filter(a=>a.getOpeningElement().getAttribute("asChild"));if(n.length===0)break;let o=n.filter(a=>!a.getDescendantsOfKind(SyntaxKind.JsxElement).some(l=>l.getOpeningElement().getAttribute("asChild"))),c=[];for(let a of o){let h=a.getOpeningElement(),l=h.getAttribute("asChild");if(!l)continue;let u=h.getTagNameNode().getText(),f=a.getJsxChildren().find(g=>g.getKind()===SyntaxKind.JsxElement||g.getKind()===SyntaxKind.JsxSelfClosingElement);if(!f){l.remove();continue}let p,y,m;if(f.getKind()===SyntaxKind.JsxSelfClosingElement){let g=f.asKindOrThrow(SyntaxKind.JsxSelfClosingElement);p=g.getTagNameNode().getText(),y=g.getAttributes().map(w=>w.getText()).join(" "),m="";}else {let g=f.asKindOrThrow(SyntaxKind.JsxElement),w=g.getOpeningElement();p=w.getTagNameNode().getText(),y=w.getAttributes().map(v=>v.getText()).join(" "),m=g.getJsxChildren().map(v=>v.getText()).join("");}let x=u==="Button"&&La.includes(p);c.push({parentElement:a,parentTagName:u,childTagName:p,childProps:y,childChildren:m,needsNativeButton:x});}for(let a of c.reverse()){let l=a.parentElement.getOpeningElement().getAttributes().filter(y=>y.getKind()===SyntaxKind.JsxAttribute?y.asKindOrThrow(SyntaxKind.JsxAttribute).getNameNode().getText()!=="asChild":true).map(y=>y.getText()).join(" "),u=a.childProps?`{<${a.childTagName} ${a.childProps} />}`:`{<${a.childTagName} />}`,d=l?`${l} `:"";d+=`render=${u}`,a.needsNativeButton&&(d+=" nativeButton={false}");let f=a.childChildren.trim()?`${a.childChildren}`:"",p=`<${a.parentTagName} ${d}>${f}</${a.parentTagName}>`;a.parentElement.replaceWithText(p);}}return e};var ti=async({sourceFile:e})=>(e.getFunctions().forEach(t=>{t.getName()==="middleware"&&t.rename("proxy");}),e.getVariableDeclarations().forEach(t=>{t.getName()==="middleware"&&t.rename("proxy");}),e.getExportDeclarations().forEach(t=>{t.getNamedExports().forEach(s=>{s.getName()==="middleware"&&s.setName("proxy"),s.getAliasNode()?.getText()==="middleware"&&s.setAlias("proxy");});}),e);var tr=[".ts",".tsx",".js",".jsx"],Wa=new Set(["tailwindConfig","tailwindCss"]),Ha=["components","ui","lib","hooks"];async function Rp(e,t,r){if(!e?.length)return {filesCreated:[],filesUpdated:[],filesSkipped:[]};r={overwrite:false,force:false,silent:false,isRemote:false,isWorkspace:false,...r};let s=Ee("Updating files.",{silent:r.silent})?.start(),[i,n]=await Promise.all([re(t.resolvedPaths.cwd),t.tailwind.baseColor?Lt(t.tailwind.baseColor):Promise.resolve(void 0)]),o=loadConfig(t.resolvedPaths.cwd),c$1=Ba(r.plannedFiles??e,t,{isSrcDir:i?.isSrcDir,framework:i?.framework.name,path:r.path}),a$1=new Project({compilerOptions:{}}),h=[],l=[],u=[],d$1=[],f=null;for(let x=0;x<e.length;x++){let g$1=e[x];if(!g$1.content)continue;let w=Nt(g$1,t,{isSrcDir:i?.isSrcDir,framework:i?.framework.name,commonRoot:Mt(e.map($=>$.path),g$1.path),path:r.path,fileIndex:x});if(!w)continue;let v=basename(g$1.path),b=R__default.dirname(w);if(t.tsx||(w=w.replace(/\.tsx?$/,$=>$===".tsx"?".jsx":".js")),Re(w)&&!existsSync(w)){let $=Us(b);$&&(w=$);}let E=existsSync(w);if(g$1.type==="registry:lib"&&basename(g$1.path)==="utils.ts"&&i?.framework.name==="laravel"&&E){u.push(R__default.relative(t.resolvedPaths.cwd,w));continue}if(E&&statSync(w).isDirectory())throw new Error(`Cannot write to ${w}: path exists and is a directory. Please provide a file path instead.`);let P=g$1.type==="registry:file"||g$1.type==="registry:item",k=Re(w)||P?g$1.content:await Qs({filename:g$1.path,raw:g$1.content,config:t,baseColor:n,transformJsx:!t.tsx,isRemote:r.isRemote,supportedFontMarkers:r.supportedFontMarkers},[Tt,At,a,_t,c,g,ei,d,...ri(w,i,t)?[ti]:[],f$1,jt]);if(E&&!Re(w)){let $=await ai({config:t,content:k,filePaths:c$1,project:a$1,projectInfo:i,resolvedPath:w,tsConfig:o}),Q=await promises.readFile(w,"utf-8");if(Vs(Q,$,{ignoreImports:r.isWorkspace})){u.push(R__default.relative(t.resolvedPaths.cwd,w));continue}}if(E&&!r.overwrite&&!Re(w)){s.stop(),r.rootSpinner&&r.rootSpinner.stop();let{overwrite:$}=await Da({type:"confirm",name:"overwrite",message:`The file ${T.info(v)} already exists. Would you like to overwrite?`,initial:false});if(!$){u.push(R__default.relative(t.resolvedPaths.cwd,w)),r.rootSpinner&&r.rootSpinner.start();continue}s?.start(),r.rootSpinner&&r.rootSpinner.start();}if(ri(w,i,t)&&(w=w.replace(/middleware\.(ts|js)$/,"proxy.$1")),existsSync(b)||await promises.mkdir(b,{recursive:true}),Re(w)&&E){let $=await promises.readFile(w,"utf-8"),Q=qs($,k);if(d$1=Ks($,k),f=R__default.relative(t.resolvedPaths.cwd,w),!d$1.length){u.push(R__default.relative(t.resolvedPaths.cwd,w));continue}await promises.writeFile(w,Q,"utf-8"),l.push(R__default.relative(t.resolvedPaths.cwd,w));continue}await promises.writeFile(w,k,"utf-8"),E?l.push(R__default.relative(t.resolvedPaths.cwd,w)):(h.push(R__default.relative(t.resolvedPaths.cwd,w)),Re(w)&&(d$1=Object.keys(Pe(k)),f=R__default.relative(t.resolvedPaths.cwd,w)));}let p=[...h,...l,...u],y=await qa(p,t,c$1);if(l.push(...y),h=Array.from(new Set(h)),l=Array.from(new Set(l.filter(x=>!h.includes(x)))),u=Array.from(new Set(u)),!(h.length||l.length)&&!u.length&&s?.info("No files updated."),h.length){if(s?.succeed(`Created ${h.length} ${h.length===1?"file":"files"}:`),!r.silent)for(let x of h)S.log(` - ${x}`);}else s?.stop();if(l.length&&(Ee(`Updated ${l.length} ${l.length===1?"file":"files"}:`,{silent:r.silent})?.info(),!r.silent))for(let x of l)S.log(` - ${x}`);if(u.length&&(Ee(`Skipped ${u.length} ${u.length===1?"file":"files"}: (files might be identical, use --overwrite to overwrite)`,{silent:r.silent})?.info(),!r.silent))for(let x of u)S.log(` - ${x}`);if(d$1.length&&f&&(Ee(`Added the following variables to ${T.info(f)}:`)?.info(),!r.silent))for(let x of d$1)S.log(` ${T.success("+")} ${x}`);return {filesCreated:h,filesUpdated:l,filesSkipped:u}}function Nt(e,t,r){if(r.path){let n=R__default.isAbsolute(r.path)?r.path:R__default.join(t.resolvedPaths.cwd,r.path);if(/\.[^/\\]+$/.test(n)){if(r.fileIndex===0)return n}else {let c=R__default.basename(e.path);return R__default.join(n,c)}}if(e.target){if(e.target.startsWith("~/"))return R__default.join(t.resolvedPaths.cwd,e.target.replace("~/",""));let n=e.target,o=za(n,t);return o?.resolvedPath?o.resolvedPath:(o?.target&&(n=o.target),e.type==="registry:page"&&(n=Ka(n,r.framework),!n)?"":r.isSrcDir?R__default.join(t.resolvedPaths.cwd,"src",n.replace("src/","")):R__default.join(t.resolvedPaths.cwd,n.replace("src/","")))}let s=Ga(e,t),i=Ua(e.path,s);return R__default.join(s,i)}function za(e,t){let r=e.match(/^@([^/]+)\/(.+)$/);if(!r)return null;let[,s,i]=r;if(!Va(s))return {target:`${s}/${i}`};let n=R__default.resolve(t.resolvedPaths[s]),o=R__default.resolve(n,i);if(o!==n&&!o.startsWith(`${n}${R__default.sep}`))throw new Error(`Invalid target path "${e}". Target paths using @${s}/ must stay within the ${s} alias root.`);return {resolvedPath:o}}function Va(e){return Ha.includes(e)}function Ga(e,t){return e.type==="registry:ui"?t.resolvedPaths.ui:e.type==="registry:lib"?t.resolvedPaths.lib:e.type==="registry:block"||e.type==="registry:component"?t.resolvedPaths.components:e.type==="registry:hook"?t.resolvedPaths.hooks:t.resolvedPaths.components}function Mt(e,t){let r=e.map(o=>o.replace(/^\//,"")),s=t.replace(/^\//,""),i=s.split("/").slice(0,-1).join("/");if(!i)return "";let n=i.split("/");for(let o=n.length;o>0;o--){let c=n.slice(0,o).join("/");if(r.some(h=>h!==s&&h.startsWith(c+"/")))return "/"+c}return "/"+i}function Ua(e,t){let r=e.replace(/^\/|\/$/g,""),s=t.replace(/^\/|\/$/g,""),i=r.split("/"),n=s.split("/"),o=n[n.length-1],c=i.findIndex(a=>a===o);return c===-1?i[i.length-1]:i.slice(c+1).join("/")}function Ka(e,t){if(!t)return "";if(t==="next-app")return e;if(t==="next-pages"){let r=e.replace(/^app\//,"pages/");return r=r.replace(/\/page(\.[jt]sx?)$/,"$1"),r}if(t==="react-router"){let r=e.replace(/^app\//,"app/routes/");return r=r.replace(/\/page(\.[jt]sx?)$/,"$1"),r}if(t==="laravel"){let r=e.replace(/^app\//,"resources/js/pages/");return r=r.replace(/\/page(\.[jt]sx?)$/,"$1"),r}return ""}async function qa(e,t,r=e){let s=new Project({compilerOptions:{}}),i=await re(t.resolvedPaths.cwd),n=loadConfig(t.resolvedPaths.cwd),o=[];if(!i||n.resultType==="failed")return [];for(let c of e){let a=R__default.resolve(t.resolvedPaths.cwd,c);if(!existsSync(a))continue;let h=await promises.readFile(a,"utf-8"),l=await promises.mkdtemp(R__default.join(tmpdir(),"shadcn-")),u=s.createSourceFile(R__default.join(l,basename(a)),h,{scriptKind:ScriptKind.TSX});if(![".tsx",".ts",".jsx",".js"].includes(u.getExtension()))continue;let d=await ai({config:t,content:h,filePaths:r,project:s,projectInfo:i,resolvedPath:a,sourceFile:u,tsConfig:n});d!==h&&(await promises.writeFile(a,d,"utf-8"),o.push(c));}return o}function Ba(e,t,r){return (e??[])?.filter(s=>!!s?.content).map((s,i)=>{let n=Nt(s,t,{isSrcDir:r.isSrcDir,framework:r.framework,commonRoot:Mt((e??[]).map(o=>o.path),s.path),path:r.path,fileIndex:i});return n?(t.tsx||(n=n.replace(/\.tsx?$/,o=>o===".tsx"?".jsx":".js")),R__default.relative(t.resolvedPaths.cwd,n)):null}).filter(s=>!!s)}async function ai({content:e,resolvedPath:t,filePaths:r,config:s,projectInfo:i,tsConfig:n,project:o,sourceFile:c}){if(!i||n.resultType==="failed")return e;let a=R__default.extname(t);if(![".tsx",".ts",".jsx",".js"].includes(a))return e;let h=c===void 0?o.createSourceFile(R__default.join(tmpdir(),`shadcn-${Math.random().toString(36).slice(2)}${a||".tsx"}`),e,{scriptKind:ScriptKind.TSX,overwrite:true}):null,l=c??h;try{let u=!1;for(let d of l.getImportDeclarations()){let f=d.getModuleSpecifierValue();if(!Xt(f,i.aliasPrefix??null))continue;let p=await Ja(f,r,s,n);if(!p)continue;let y=Za(p,s,i,t);!y||y===f||(d.setModuleSpecifier(y),u=!0);}return u?l.getFullText():e}finally{h&&o.removeSourceFile(h);}}async function Ja(e,t,r,s){let i=(await Be(e,{...s,cwd:r.resolvedPaths.cwd}))?.path,n=!i&&!e.startsWith(".")?Qa(e,r):null;return !i&&!n?null:Ya(i??n,t,r)}function Ya(e,t,r,s=[".tsx",".ts",".js",".jsx",".css"]){let i=R__default.normalize(r.resolvedPaths.cwd),n=t.map(m=>m.split(R__default.sep).join(R__default.posix.sep)),o=new Set(n),c=R__default.extname(e),a=c!=="",h=a?e.slice(0,-c.length):e,u=R__default.relative(i,h).split(R__default.sep).join(R__default.posix.sep),d=a?[c]:s,f=new Set;for(let m of d){let x=h+m,g=R__default.posix.normalize(R__default.relative(i,x));(o.has(g)||existsSync(x))&&f.add(g);let w=R__default.join(h,`index${m}`),v=R__default.posix.normalize(R__default.relative(i,w));(o.has(v)||existsSync(w))&&f.add(v);}let p=R__default.basename(h);for(let m of n)d.some(x=>m.endsWith(`/${p}${x}`))&&f.add(m);return f.size===0?null:Array.from(f).sort((m,x)=>{let g=R__default.posix.extname(m),w=R__default.posix.extname(x),v=d.indexOf(g)-d.indexOf(w);if(v!==0)return v;let b=u&&m.startsWith(u)?-1:1,E=u&&x.startsWith(u)?-1:1;return b-E})[0]}function Za(e,t,r,s){let i=R__default.normalize(R__default.join(t.resolvedPaths.cwd,e)),n=Object.entries(t.resolvedPaths).filter(([p,y])=>{if(!y||Wa.has(p))return false;let m=R__default.normalize(y);if(i===m){let x=t.aliases[p];if(typeof x!="string"||!x.startsWith("#"))return true;let g=qe(x,t.resolvedPaths.cwd);return g!==null&&!g.matchedAlias.includes("*")}return i.startsWith(R__default.normalize(y+R__default.sep))}).sort((p,y)=>y[1].length-p[1].length);if(n.length===0)return null;let[o,c]=n[0],a=R__default.relative(c,i);a=a.split(R__default.sep).join("/");let h=o==="cwd"?r.aliasPrefix:t.aliases[o];if(!h)return null;if(h.startsWith("#")){let p=qe(h,t.resolvedPaths.cwd);if(p)return Xa(h,a,p)??(s?tc(s,i):null)}let l=R__default.posix.extname(a),u=tr.includes(l)?"":l,d=a.slice(0,a.length-l.length);d.endsWith("/index")&&(d=d.slice(0,-6));let f=d===""?"":`/${d}`;return f=f.replace("/src",""),`${h}${f}${u}`}function Xa(e,t,r){let s=R__default.posix.extname(t),i=tr.includes(s)&&r.emitMode==="strip_extension"?"":s,n=t?t.slice(0,t.length-s.length)+i:"";return r.matchedAlias.includes("*")?n?`${e}/${n}`:e:n===""||n==="index"?e:null}function Qa(e,t){let r=ec(t);for(let s of r){if(e===s.alias||e===s.canonical)return s.rootPath;if(e.startsWith(`${s.alias}/`))return R__default.join(s.rootPath,e.slice(s.alias.length+1));if(e.startsWith(`${s.canonical}/`))return R__default.join(s.rootPath,e.slice(s.canonical.length+1))}return null}function ec(e){return [{alias:e.aliases.ui,canonical:"@/components/ui",rootPath:e.resolvedPaths.ui},{alias:e.aliases.components,canonical:"@/components",rootPath:e.resolvedPaths.components},{alias:e.aliases.hooks,canonical:"@/hooks",rootPath:e.resolvedPaths.hooks},{alias:e.aliases.lib,canonical:"@/lib",rootPath:e.resolvedPaths.lib},{alias:e.aliases.utils,canonical:"@/lib/utils",rootPath:e.resolvedPaths.utils}].filter(t=>typeof t.alias=="string"&&typeof t.rootPath=="string").sort((t,r)=>r.alias.length-t.alias.length||r.canonical.length-t.canonical.length)}function tc(e,t){let r=R__default.relative(R__default.dirname(e),t);r=r.split(R__default.sep).join("/");let s=R__default.posix.extname(r),i=tr.includes(s)?"":s,n=r.slice(0,r.length-s.length);return n.endsWith("/index")&&(n=n.slice(0,-6)),n.startsWith(".")||(n=`./${n}`),`${n}${i}`}function ri(e,t,r){let s=e===R__default.join(r.resolvedPaths.cwd,"middleware.ts")||e===R__default.join(r.resolvedPaths.cwd,"middleware.js"),i=t?.framework.name==="next-app"||t?.framework.name==="next-pages";if(!s||!i||!t?.frameworkVersion)return false;let n=parseInt(t.frameworkVersion.split(".")[0]);return !isNaN(n)&&n>=16}new Project({compilerOptions:{}});function _(e){try{return new URL(e),!0}catch{return false}}function pe(e){return e.endsWith(".json")&&!_(e)}function Lp(e){return !e||e.type!=="registry:item"&&e.type!=="registry:file"?false:(e.files??[]).every(r=>!!r.target&&(r.type==="registry:file"||r.type==="registry:item"))}async function li(e,t){if(!sc(t))return z$1.array(g$1).parse(e.flat().filter(Boolean));let r=await re(t.resolvedPaths.cwd),s=new Map,i=z$1.array(g$1).parse(e.flat().filter(Boolean));return i.forEach(n=>{let o=Nt(n,t,{isSrcDir:r?.isSrcDir,framework:r?.framework.name,commonRoot:Mt(i.map(c=>c.path),n.path)});o&&s.set(o,n);}),Array.from(s.values())}function sc(e){return !!(e?.resolvedPaths?.cwd&&(e?.resolvedPaths?.ui||e?.resolvedPaths?.lib||e?.resolvedPaths?.components||e?.resolvedPaths?.hooks))}var ic=/^(?!.*--)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,37}[a-zA-Z0-9])?$/,nc=/^[a-zA-Z0-9._-]+$/,oc=new Set([".",".."]),ac=/[\x00-\x1F\x7F]/,cc=/\s/,lc=/^-/;function Ze(e){if(_(e))return {scheme:"url",url:e};if(pe(e))return {scheme:"file",path:e};let{registry:t,item:r}=ce(e);if(t)return {scheme:"namespace",namespace:t,item:r};let s=uc(e);return s||{scheme:"shadcn",item:e}}function Ft(e){return Ze(e).scheme==="github"}function Xe(e){let t=e.indexOf("#"),r=t===-1?e:e.slice(0,t),s=t===-1?void 0:e.slice(t+1),i=r.split("/");if(i.length!==2)return null;let[n,o]=i;if(!hi(n)||!fi(o))return null;if(s!==void 0&&!di(s))throw new C(`Invalid GitHub ref in registry source "${e}".`,{context:{source:e,ref:s},suggestion:"Use a non-empty branch, tag, or commit SHA without whitespace, control characters or leading dashes."});return {owner:n,repo:o,ref:s}}function ui(e){return Xe(e)!==null}function uc(e){let t=e.indexOf("#"),r=t===-1?e:e.slice(0,t),s=t===-1?void 0:e.slice(t+1),i=r.split("/");if(i.length<3)return null;let[n,o,...c]=i;if(!hi(n)||!fi(o))return null;let a=c.join("/");if(!a)return null;if(s!==void 0&&!di(s))throw new C(`Invalid GitHub ref in item address "${e}".`,{context:{address:e,ref:s},suggestion:"Use a non-empty branch, tag, or commit SHA without whitespace, control characters or leading dashes."});return {scheme:"github",owner:n,repo:o,item:a,ref:s}}function hi(e){return ic.test(e)}function fi(e){return nc.test(e)&&!oc.has(e)}function di(e){return !!e&&!ac.test(e)&&!cc.test(e)&&!lc.test(e)}function Qe(e){return e.replace(/\${(\w+)}/g,(t,r)=>process.env[r]||"")}function et(e){let t=[],r=/\${(\w+)}/g,s;for(;(s=r.exec(e))!==null;)t.push(s[1]);return t}function fc(e){return e.style?e.style==="new-york"&&e.tailwind?.config===""?pt:e.style:pt}function Oe(e){let t=Ws({style:pt,registries:D});return e?d$1.parse(_e(t,{...e,style:fc(e),registries:{...D,...e.registries}})):t}var Dt={headers:{}};function tt(e){Dt.headers={...Dt.headers,...e};}function pi(e){return Dt.headers[e]||{}}function Ie(){Dt.headers={};}function dc(e){let t=new Set;return typeof e=="string"?et(e).forEach(r=>t.add(r)):(et(e.url).forEach(r=>t.add(r)),e.params&&Object.values(e.params).forEach(r=>{et(r).forEach(s=>t.add(s));}),e.headers&&Object.values(e.headers).forEach(r=>{et(r).forEach(s=>t.add(s));})),Array.from(t)}function mi(e,t){let s=dc(t).filter(i=>!process.env[i]);if(s.length>0)throw new Ve(e,s)}function im(e,t){for(let r of e)ui(r)||je(r,Oe(t));Ie();}var gi="{name}",Wt="{style}",yi=/\${(\w+)}/g,wi="?",pc="&";function mc(e){return e.startsWith("./")||e.startsWith("/")}function je(e,t){let{registry:r,item:s}=ce(e);if(!r){if(_(e)||pe(e)||mc(e)||Ft(e))return null;r="@shadcn";}let n={...D,...t?.registries}[r];if(!n)throw new ae(r);return mi(r,n),{url:gc(s,n,t),headers:yc(n)}}function gc(e,t,r){if(typeof t=="string"){let i=t.replace(gi,e);return r?.style&&i.includes(Wt)&&(i=i.replace(Wt,r.style)),Qe(i)}let s=t.url.replace(gi,e);return r?.style&&s.includes(Wt)&&(s=s.replace(Wt,r.style)),s=Qe(s),t.params?wc(s,t.params):s}function yc(e){if(typeof e=="string"||!e.headers)return {};let t={};for(let[r,s]of Object.entries(e.headers)){let i=Qe(s);xc(s,i)&&(t[r]=i);}return t}function wc(e,t){let r=new URLSearchParams;for(let[n,o]of Object.entries(t)){let c=Qe(o);c&&r.append(n,c);}let s=r.toString();if(!s)return e;let i=e.includes(wi)?pc:wi;return `${e}${i}${s}`}function xc(e,t){let r=t.trim();if(!r)return false;if(e.includes("${")&&e.match(yi)){let i=e.replace(yi,"").trim();return r!==i}return true}function Ht(e){if(_(e)){let t=new URL(e);return t.pathname.match(/\/chat\/b\//)&&!t.pathname.endsWith("/json")&&(t.pathname=`${t.pathname}/json`),t.toString()}return `${xe}/${e}`}var bc=process.env.https_proxy||process.env.HTTPS_PROXY||process.env.http_proxy||process.env.HTTP_PROXY?new EnvHttpProxyAgent:void 0;async function zt(e,t){try{return await fetch(e,{...t,dispatcher:bc})}catch(r){let s=r instanceof TypeError?r.cause:void 0;if(s){let i=new Error(`Request to ${e} failed, reason: ${xi(s)}`);throw i.cause=s,i}throw r}}function xi(e){if(e instanceof Error&&"errors"in e){let t=e.errors;if(Array.isArray(t)&&t.length)return xi(t[0])}return e instanceof Error?e.message||e.code||"unknown error":String(e)}var rr=new Map;async function L(e,t={}){t={useCache:true,...t};try{return await Promise.all(e.map(async s=>{let i=Ht(s);if(t.useCache&&rr.has(i))return rr.get(i);let n=(async()=>{let o=pi(i),c=new Headers({Accept:"application/vnd.shadcn.v1+json, application/json;q=0.9","User-Agent":"shadcn"});for(let[h,l]of Object.entries(o))c.set(h,l);let a=await zt(i,{headers:c});if(!a.ok){let h;if(a.headers.get("content-type")?.includes("application/json")){let l=await a.json(),u=z$1.object({detail:z$1.string().optional(),title:z$1.string().optional(),message:z$1.string().optional(),error:z$1.string().optional()}).safeParse(l);u.success&&(h=u.data.detail||u.data.message,u.data.error&&(h=`[${u.data.error}] ${h}`));}throw a.status===401?new We(i,h):a.status===404?new ve(i,h):a.status===410?new mt(i,h):a.status===403?new He(i,h):new ze(i,a.status,h)}return a.json()})();return t.useCache&&rr.set(i,n),n}))}catch(r){throw r}}async function bi(e){try{let t=e;e.startsWith("~/")&&(t=R__default.join(homedir(),e.slice(2)));let r=R__default.resolve(t),s=await promises.readFile(r,"utf8"),i=JSON.parse(s);try{return n.parse(i)}catch(n){throw new M(e,n)}}catch(t){throw t instanceof Error&&(t.message.includes("ENOENT")||t.message.includes("no such file"))?new ee(e,t):t instanceof M?t:new ee(e,t)}}var Sc="https://github.com",Ri=/^[a-fA-F0-9]{40}$/,Cc=15e3;async function Ei(e,t={}){let r=e.ref??"HEAD";if(Ri.test(r))return r.toLowerCase();let s=`${e.owner}/${e.repo}#${r}`;if(t.cache?.has(s))return t.cache.get(s);let i=$c(e,r).catch(n=>{throw t.cache?.delete(s),n});return t.cache?.set(s,i),i}async function $c(e,t){let r=`${Sc}/${e.owner}/${e.repo}.git`,s=kc(t),i;try{i=(await execa("git",["ls-remote","--symref","--",r,...s],{env:{GIT_TERMINAL_PROMPT:"0"},timeout:Cc})).stdout;}catch(o){throw Pc(e,t,r,o)}let n=Tc(i);for(let o of Ii(t)){let c=n.get(o);if(c)return c}throw new H("registry.json",void 0,{message:`Could not resolve GitHub ref "${t}" for ${e.owner}/${e.repo}.`,context:{reason:"github-ref-resolution",source:Si(e),ref:t,repoUrl:r},suggestion:'Use an existing branch, tag, or full commit SHA. For example: "owner/repo/item#main" or "owner/repo/item#v1.0.0".'})}function kc(e){return Array.from(new Set(Ii(e)))}function Ii(e){return e==="HEAD"?["HEAD"]:e.startsWith("refs/tags/")?[`${e}^{}`,e]:e.startsWith("refs/")?[e]:[`refs/heads/${e}`,`refs/tags/${e}^{}`,`refs/tags/${e}`,e]}function Tc(e){let t=new Map;for(let r of e.split(`
|
|
35
|
+
`)){let s=r.trim();if(!s||s.startsWith("ref:"))continue;let[i,n]=s.split(/\s+/);i&&n&&Ri.test(i)&&t.set(n,i.toLowerCase());}return t}function Pc(e,t,r,s){return new H("registry.json",s,{message:`Failed to resolve GitHub ref "${t}" for ${e.owner}/${e.repo}.`,context:{reason:"github-ref-resolution",source:Si(e),ref:t,repoUrl:r},suggestion:Ac(s)})}function Ac(e){return Oc(e)?"Install Git and try again. Git is required to resolve GitHub registry refs.":jc(e)?"GitHub ref resolution timed out. Check your network connection and try again.":"Check that the public GitHub repository exists and the ref is accessible."}function Oc(e){return typeof e=="object"&&e!==null&&"code"in e&&e.code==="ENOENT"}function jc(e){return typeof e=="object"&&e!==null&&"timedOut"in e&&e.timedOut===true}function Si(e){return `${e.owner}/${e.repo}#${e.ref??"HEAD"}`}async function sr(e,t,r={}){let s=Li(r.registryFile??"registry.json"),i=await ki(s,t,{source:r.source}),n=i.registry.items.find(o=>o.name===e);if(!n)throw new be(e);return _c(n,i,t)}async function ir(e,t={}){let r=Li(t.registryFile??"registry.json"),s=await ki(r,e,{source:t.source});return Nc(s)}async function ki(e,t,r={}){let s=await Oi(e,t,r),i=ji(s,e);Ci(i,e);let n={itemSources:new Map,itemSourcesByItem:new Map,firstIncludedFrom:new Map},o=!!i.include?.length;if(!o){let l=Mi(e);return i.items.forEach((u,d)=>{Ni(u,e,l);let f={registryFile:e,registryDir:l,itemIndex:d};n.itemSources.set(u.name,f),n.itemSourcesByItem.set(u,f);}),$i(i.items,n.itemSourcesByItem),{registry:i,itemSources:n.itemSources,itemSourcesByItem:n.itemSourcesByItem,usesInclude:o}}if(R__default.posix.basename(e)!=="registry.json")throw new C(`Invalid source registry file at ${e}: registries that use include must be named registry.json.`,{registryFile:e});let c=await Ai(e,i,t,n,[]);$i(c.items,n.itemSourcesByItem);let{include:a,...h}=c;return Ci(h,e),{registry:h,itemSources:n.itemSources,itemSourcesByItem:n.itemSourcesByItem,usesInclude:o}}async function _c(e,t,r){let s={...Ti(e,t.itemSourcesByItem),$schema:"https://ui.shadcn.com/schema/registry-item.json"};return await Promise.all((e.files??[]).map(async(i,n)=>{let o=s.files?.[n];if(!o)return;let c=t.itemSourcesByItem.get(e),a=Pi(e,i.path,t.itemSourcesByItem);o.content=await Mc(e.name,i.path,a,c,r);})),n.parse(s)}function Nc(e){return {...e.registry,items:e.registry.items.map(t=>Lc(Ti(t,e.itemSourcesByItem)))}}async function Mc(e,t,r,s,i){try{return await i.readText(r)}catch(n){let o=n instanceof H&&n.context?.reason==="github-source-file";throw new H(r,n,{message:`Failed to read file "${t}" for registry item "${e}" (${st(s)}). Expected file at ${r}.`,context:{registryFile:s?.registryFile,itemIndex:s?.itemIndex,itemName:e,itemFilePath:t,sourcePath:r},suggestion:o&&n.suggestion?n.suggestion:"Make sure the file path is relative to the registry.json file that declares the item."})}}function Ti(e,t){return {...e,files:e.files?.map(r=>({...r,path:Fc(e,r.path,t)}))}}function Lc(e){return {...e,files:e.files?.map(({content:t,...r})=>r)}}function Pi(e,t,r){let s=r.get(e);return nr(s?.registryDir??".",t)}function Fc(e,t,r){let s=Pi(e,t,r);return Wc(".",s)}async function Ai(e,t,r,s,i){if(_i(e),i.length>=32)throw new C(`Registry include tree is too deep at ${e}. The maximum include depth is 32.`,{registryFile:e,context:{maxDepth:32},suggestion:"Flatten part of the registry include tree or reduce nested include depth."});if(i.includes(e))throw new C(Hc([...i,e]),{registryFile:e});let n=i.at(-1)??e,o=s.firstIncludedFrom.get(e);if(o)throw new C(`Registry file included more than once: ${e}.
|
|
36
36
|
- first included from ${o}
|
|
37
37
|
- included again from ${n}
|
|
38
|
-
Each registry.json file can only appear once in the resolved include tree. Remove one include or move shared items into a single included registry.json.`,{registryFile:e,context:{firstSource:o,secondSource:n}});s.firstIncludedFrom.set(e,n);let c=[...i,e],a=
|
|
39
|
-
${Vc(s.error)}`,{registryFile:t,cause:s.error,suggestion:"Update the registry.json file so it matches the registry schema."});return s.data}function
|
|
38
|
+
Each registry.json file can only appear once in the resolved include tree. Remove one include or move shared items into a single included registry.json.`,{registryFile:e,context:{firstSource:o,secondSource:n}});s.firstIncludedFrom.set(e,n);let c=[...i,e],a=Mi(e),h=[];for(let l of t.include??[]){let u=Dc(l,a,e),d=await Oi(u,r),f=ji(d,u),p=await Ai(u,f,r,s,c);h.push(...p.items);}return t.items?.forEach((l,u)=>{Ni(l,e,a),s.itemSources.set(l.name,{registryFile:e,registryDir:a,itemIndex:u}),s.itemSourcesByItem.set(l,{registryFile:e,registryDir:a,itemIndex:u});}),{...t,items:[...h,...t.items??[]]}}async function Oi(e,t,r={}){try{return await t.readText(e)}catch(s){throw s instanceof H&&(s.context?.reason==="github-ref-resolution"||s.context?.reason==="github-source-file")?s:new H(e,s,{message:`Failed to read source registry file at ${zc(e,r.source)}.`,context:{registryFile:e,source:r.source},suggestion:e==="registry.json"?"Check that the repository has a registry.json file at its root.":"Check that the included registry.json file exists and that the include path is correct."})}}function ji(e,t){let r;try{r=JSON.parse(e);}catch(i){throw new M(t,i,{subject:"registry file",context:{registryFile:t},suggestion:"Fix the JSON syntax in the registry.json file and try again."})}let s=o.safeParse(r);if(!s.success)throw new C(`Invalid registry file at ${t}:
|
|
39
|
+
${Vc(s.error)}`,{registryFile:t,cause:s.error,suggestion:"Update the registry.json file so it matches the registry schema."});return s.data}function Ci(e,t){let r=[];if(e.name||r.push("name"),e.homepage||r.push("homepage"),r.length)throw new C(`Invalid root registry file at ${t}: root registry.json must define ${r.map(s=>`"${s}"`).join(" and ")}. Included registry.json files may omit these fields.`,{registryFile:t})}function Dc(e,t,r){if(_(e))throw new C(`Invalid include "${e}" in ${r}: remote includes are not supported by shadcn build. Use a relative path to a registry.json file in the same repository.`,{registryFile:r,context:{includePath:e}});if(R__default.posix.isAbsolute(e))throw new C(`Invalid include "${e}" in ${r}: include paths must be relative. Use a path like "./registry/ui/registry.json".`,{registryFile:r,context:{includePath:e}});if(Di(e))throw new C(`Invalid include "${e}" in ${r}: include paths cannot use parent-directory traversal. Keep included registry.json files inside the registry root.`,{registryFile:r,context:{includePath:e}});if(R__default.posix.basename(e)!=="registry.json")throw new C(`Invalid include "${e}" in ${r}: include paths must explicitly reference a registry.json file. Use a path like "./registry/ui/registry.json".`,{registryFile:r,context:{includePath:e}});let s=nr(t,e);return _i(s),s}function _i(e){if(!Fi(e))throw new C(`Invalid registry file at ${e}: registry includes must stay inside the source registry root.`,{registryFile:e})}function Ni(e,t,r){for(let s of e.files??[]){if(_(s.path))throw new C(`Invalid file path "${s.path}" for item "${e.name}" in ${t}: remote file paths are not supported by shadcn build.`,{registryFile:t,context:{itemName:e.name,filePath:s.path}});if(R__default.posix.isAbsolute(s.path))throw new C(`Invalid file path "${s.path}" for item "${e.name}" in ${t}: file paths must be relative.`,{registryFile:t,context:{itemName:e.name,filePath:s.path}});if(Di(s.path))throw new C(`Invalid file path "${s.path}" for item "${e.name}" in ${t}: file paths cannot use parent-directory traversal.`,{registryFile:t,context:{itemName:e.name,filePath:s.path}});let i=nr(r,s.path);if(!Fi(i,r))throw new C(`Invalid file path "${s.path}" for item "${e.name}" in ${t}: file paths must stay inside the registry chunk directory.`,{registryFile:t,context:{itemName:e.name,filePath:s.path}})}}function $i(e,t){let r=new Map;for(let s of e){let i=r.get(s.name);if(!i){r.set(s.name,s);continue}let n=t.get(i),o=t.get(s);throw new C(`Duplicate registry item name "${s.name}". Registry item names must be unique.
|
|
40
40
|
- ${st(n)}
|
|
41
41
|
- ${st(o)}
|
|
42
|
-
Rename one of these items so each name is unique across the resolved registry.`,{context:{itemName:s.name,firstSource:st(n),secondSource:st(o)}})}}function
|
|
42
|
+
Rename one of these items so each name is unique across the resolved registry.`,{context:{itemName:s.name,firstSource:st(n),secondSource:st(o)}})}}function Mi(e){let t=R__default.posix.dirname(e);return t==="."?".":t}function nr(...e){let t=R__default.posix.normalize(R__default.posix.join(...e));return t==="."?"":t}function Li(e){let t=R__default.posix.normalize(e);return t.startsWith("./")?t.slice(2):t}function Wc(e,t){return R__default.posix.relative(e,t)||R__default.posix.basename(t)}function Fi(e,t="."){let r=R__default.posix.relative(t,e);return !!r&&!r.startsWith("..")&&!R__default.posix.isAbsolute(r)}function Di(e){return e.split(/[\\/]+/).includes("..")}function Hc(e){return `Registry include cycle detected:
|
|
43
43
|
${e.map(t=>` - ${t}`).join(`
|
|
44
44
|
`)}`}function st(e){return e?`${e.registryFile} items[${e.itemIndex}]`:"unknown source"}function zc(e,t){return t?`${t}/${e}`:e}function Vc(e){return e.errors.map(t=>` - ${t.path.length?t.path.join("."):"(root)"}: ${t.message}`).join(`
|
|
45
|
-
`)}var qc="https://raw.githubusercontent.com",Bc=8,Jc=process.env.https_proxy?new HttpsProxyAgent(process.env.https_proxy):void 0;async function Di(e,t={}){t={...t,sourceCache:t.sourceCache??new Map};let r=nr(e,t);return rr(e.item,r,{source:Se(e)})}async function Wi(e,t={}){t={...t,sourceCache:t.sourceCache??new Map};let r=nr(e,t);return sr(r,{source:Se(e)})}async function zm(e,t={}){let r=Se(e),s=`${r}/registry.json`,i=new Set,n=t.sourceCache??new Map,o={...t,sourceCache:n},c=nr(e,o),a={async readText(h){return h.endsWith("registry.json")&&i.add(`${r}/${h}`),c.readText(h)}};try{let h=await sr(a,{source:r}),u=(await Xc(h.items,Bc,async(d,f)=>{try{return await rr(d.name,a,{source:r}),null}catch(p){return Fi(p,{defaultRegistryFile:s,itemName:d.name,itemIndex:f,sourceLabel:r})}})).filter(d=>d!==null);return {valid:u.length===0,cwd:r,registryFiles:i.size,registryFilePaths:Array.from(i),items:h.items.length,diagnostics:u}}catch(h){return {valid:false,cwd:r,registryFiles:i.size||1,registryFilePaths:i.size?Array.from(i):[s],items:0,diagnostics:[Fi(h,{defaultRegistryFile:s,sourceLabel:r})]}}}function nr(e,t){let r=bi(e,{cache:t.sourceCache});return {async readText(s){let i=await r,n=Zc(e,i,s);if(t.useCache!==false&&t.sourceCache?.has(n))return t.sourceCache.get(n);let o=Yc(n,s,e);return t.useCache!==false&&t.sourceCache?.set(n,o),o}}}async function Yc(e,t,r){let s;try{s=await bc(e,{agent:Jc,headers:new Headers({"Accept-Encoding":"identity","User-Agent":"shadcn"})});}catch(i){throw new H(t,i,{message:`Failed to read GitHub source file "${t}" from ${Se(r)}.`,context:{reason:"github-source-file",url:e,source:Se(r),filePath:t},suggestion:"GitHub ref resolution succeeded, but the CLI could not fetch from raw.githubusercontent.com. Check that raw.githubusercontent.com is accessible from this network."})}if(!s.ok)throw new H(t,void 0,{message:`Failed to read GitHub source file "${t}" from ${Se(r)}.`,context:{reason:"github-source-file",url:e,statusCode:s.status,source:Se(r),filePath:t},suggestion:t==="registry.json"?"The GitHub repository and ref were resolved, but raw.githubusercontent.com did not return a root registry.json file. Check that the public repository has registry.json at its root and that raw.githubusercontent.com is accessible from this network.":"Check that the file path exists in the public GitHub repository."});return s.text()}function Zc(e,t,r){let s=r.split("/").map(i=>encodeURIComponent(i)).join("/");return `${qc}/${e.owner}/${e.repo}/${t}/${s}`}async function Xc(e,t,r){let s=new Array(e.length),i=0,n=Math.min(t,e.length),o=Array.from({length:n},async()=>{for(;i<e.length;){let c=i++;s[c]=await r(e[c],c);}});return await Promise.all(o),s}function Se(e){return `${e.owner}/${e.repo}#${e.ref??"HEAD"}`}function Fi(e,t){return e instanceof j?{registryFile:typeof e.context?.registryFile=="string"?`${t.sourceLabel}/${e.context.registryFile}`:t.defaultRegistryFile,itemName:t.itemName,itemIndex:typeof e.context?.itemIndex=="number"?e.context.itemIndex:t.itemIndex,filePath:typeof e.context?.itemFilePath=="string"?e.context.itemFilePath:typeof e.context?.filePath=="string"?e.context.filePath:void 0,includePath:typeof e.context?.includePath=="string"?e.context.includePath:void 0,message:e.message,suggestion:e.suggestion}:{registryFile:t.defaultRegistryFile,itemName:t.itemName,itemIndex:t.itemIndex,message:e instanceof Error?e.message:"Unknown error."}}async function rg(e,t,r){if(!e||(r={silent:false,tailwindVersion:"v3",...r},r.tailwindVersion==="v4"))return;let s=R__default.relative(t.resolvedPaths.cwd,t.resolvedPaths.tailwindConfig),i=Ie(`Updating ${T.info(s)}`,{silent:r.silent}).start(),n=await promises.readFile(t.resolvedPaths.tailwindConfig,"utf8"),o=await il(n,e,t);await promises.writeFile(t.resolvedPaths.tailwindConfig,o,"utf8"),i?.succeed();}async function il(e,t,r){let s=await zi(e,r),i=s.getDescendantsOfKind(SyntaxKind.ObjectLiteralExpression).find(o=>o.getProperties().some(c=>c.isKind(SyntaxKind.PropertyAssignment)&&c.getName()==="content"));if(!i)return e;let n=cl(i);return nl(i,{name:"darkMode",value:"class"},{quoteChar:n}),t.plugins?.forEach(o=>{al(i,o);}),t.theme&&await ol(i,t.theme),s.getFullText()}function nl(e,t,{quoteChar:r}){let s=e.getProperty("darkMode");if(!s){let i={name:t.name,initializer:`[${r}${t.value}${r}]`};return t.name==="darkMode"?(e.insertPropertyAssignment(0,i),e):(e.addPropertyAssignment(i),e)}if(s.isKind(SyntaxKind.PropertyAssignment)){let i=s.getInitializer(),n=`${r}${t.value}${r}`;if(i?.isKind(SyntaxKind.StringLiteral)){let o=i.getText();return i.replaceWithText(`[${o}, ${n}]`),e}if(i?.isKind(SyntaxKind.ArrayLiteralExpression)){if(i.getElements().map(o=>o.getText()).includes(n))return e;i.addElement(n);}return e}return e}async function ol(e,t){e.getProperty("theme")||e.addPropertyAssignment({name:"theme",initializer:"{}"}),ar(e);let s=(e.getPropertyOrThrow("theme")?.asKindOrThrow(SyntaxKind.PropertyAssignment)).getInitializer();if(s?.isKind(SyntaxKind.ObjectLiteralExpression)){let i=s.getText(),n=await ll(i),o=_e(n,t,{arrayMerge:(a,h)=>h}),c=tl(o).replace(/\'\.\.\.(.*)\'/g,"...$1").replace(/\'\"/g,"'").replace(/\"\'/g,"'").replace(/\'\[/g,"[").replace(/\]\'/g,"]").replace(/\'\\\'/g,"'").replace(/\\\'/g,"'").replace(/\\\'\'/g,"'").replace(/\'\'/g,"'");s.replaceWithText(c);}cr(e);}function al(e,t){let r=e.getProperty("plugins");if(!r)return e.addPropertyAssignment({name:"plugins",initializer:`[${t}]`}),e;if(r.isKind(SyntaxKind.PropertyAssignment)){let s=r.getInitializer();if(s?.isKind(SyntaxKind.ArrayLiteralExpression)){if(s.getElements().map(i=>i.getText().replace(/["']/g,"")).includes(t.replace(/["']/g,"")))return e;s.addElement(t);}return e}return e}async function zi(e,t){let r=await promises.mkdtemp(R__default.join(tmpdir(),"shadcn-")),s=t?.resolvedPaths?.tailwindConfig||"tailwind.config.ts",i=R__default.join(r,`shadcn-${R__default.basename(s)}`);return new Project({compilerOptions:{}}).createSourceFile(i,e,{scriptKind:R__default.extname(s)===".ts"?ScriptKind.TS:ScriptKind.JS})}function cl(e){return e.getFirstDescendantByKind(SyntaxKind.StringLiteral)?.getQuoteKind()===QuoteKind.Single?"'":'"'}function ar(e){let t=e.getProperties();for(let r=0;r<t.length;r++){let s=t[r];if(s.isKind(SyntaxKind.SpreadAssignment)){let i=s.asKindOrThrow(SyntaxKind.SpreadAssignment),n=i.getExpression().getText();e.insertPropertyAssignment(r,{name:`"___${n.replace(/^\.\.\./,"")}"`,initializer:`"...${n.replace(/^\.\.\./,"")}"`}),i.remove();}else if(s.isKind(SyntaxKind.PropertyAssignment)){let n=s.asKindOrThrow(SyntaxKind.PropertyAssignment).getInitializer();n&&n.isKind(SyntaxKind.ObjectLiteralExpression)?ar(n.asKindOrThrow(SyntaxKind.ObjectLiteralExpression)):n&&n.isKind(SyntaxKind.ArrayLiteralExpression)&&Vi(n.asKindOrThrow(SyntaxKind.ArrayLiteralExpression));}}}function Vi(e){let t=e.getElements();for(let r=0;r<t.length;r++){let s=t[r];if(s.isKind(SyntaxKind.ObjectLiteralExpression))ar(s.asKindOrThrow(SyntaxKind.ObjectLiteralExpression));else if(s.isKind(SyntaxKind.ArrayLiteralExpression))Vi(s.asKindOrThrow(SyntaxKind.ArrayLiteralExpression));else if(s.isKind(SyntaxKind.SpreadElement)){let i=s.getText();e.removeElement(r),e.insertElement(r,`"${i}"`);}}}function cr(e){let t=e.getProperties();for(let r=0;r<t.length;r++){let s=t[r];if(s.isKind(SyntaxKind.PropertyAssignment)){let i=s,n=i.getInitializer();if(n&&n.isKind(SyntaxKind.StringLiteral)){let o=n.asKindOrThrow(SyntaxKind.StringLiteral).getLiteralValue();o.startsWith("...")&&(e.insertSpreadAssignment(r,{expression:o.slice(3)}),i.remove());}else n?.isKind(SyntaxKind.ObjectLiteralExpression)?cr(n):n&&n.isKind(SyntaxKind.ArrayLiteralExpression)&&Gi(n.asKindOrThrow(SyntaxKind.ArrayLiteralExpression));}}}function Gi(e){let t=e.getElements();for(let r=0;r<t.length;r++){let s=t[r];if(s.isKind(SyntaxKind.ObjectLiteralExpression))cr(s.asKindOrThrow(SyntaxKind.ObjectLiteralExpression));else if(s.isKind(SyntaxKind.ArrayLiteralExpression))Gi(s.asKindOrThrow(SyntaxKind.ArrayLiteralExpression));else if(s.isKind(SyntaxKind.StringLiteral)){let i=s.getText(),n=/(?:^['"])(\.\.\..*)(?:['"]$)/g;n.test(i)&&(e.removeElement(r),e.insertElement(r,i.replace(n,"$1")));}}}async function ll(e){let r=(await zi(`const theme = ${e}`,null)).getStatements()[0];if(r?.getKind()===SyntaxKind.VariableStatement){let i=(r.getDeclarationList()?.getDeclarations()[0]).getInitializer();if(i?.isKind(SyntaxKind.ObjectLiteralExpression))return await zt(i)}throw new Error("Invalid input: not an object literal")}function zt(e){let t={};for(let r of e.getProperties())if(r.isKind(SyntaxKind.PropertyAssignment)){let s=r.getName().replace(/\'/g,"");r.getInitializer()?.isKind(SyntaxKind.ObjectLiteralExpression)?t[s]=zt(r.getInitializer()):r.getInitializer()?.isKind(SyntaxKind.ArrayLiteralExpression)?t[s]=Ui(r.getInitializer()):t[s]=lr(r.getInitializer());}return t}function Ui(e){let t=[];for(let r of e.getElements())r.isKind(SyntaxKind.ObjectLiteralExpression)?t.push(zt(r.asKindOrThrow(SyntaxKind.ObjectLiteralExpression))):r.isKind(SyntaxKind.ArrayLiteralExpression)?t.push(Ui(r.asKindOrThrow(SyntaxKind.ArrayLiteralExpression))):t.push(lr(r));return t}function lr(e){switch(e.getKind()){case SyntaxKind.StringLiteral:return e.getText();case SyntaxKind.NumericLiteral:return Number(e.getText());case SyntaxKind.TrueKeyword:return true;case SyntaxKind.FalseKeyword:return false;case SyntaxKind.NullKeyword:return null;case SyntaxKind.ArrayLiteralExpression:return e.getElements().map(lr);case SyntaxKind.ObjectLiteralExpression:return zt(e);default:return e.getText()}}function Ki(e){let t={};for(let r of Object.keys(e)){let s=r.split("-"),i=s[0],n=s.slice(1).join("-");n===""?typeof t[i]=="object"?t[i].DEFAULT=`hsl(var(--${r}))`:t[i]=`hsl(var(--${r}))`:(typeof t[i]!="object"&&(t[i]={DEFAULT:`hsl(var(--${i}))`}),t[i][n]=`hsl(var(--${r}))`);}for(let[r,s]of Object.entries(t))typeof s=="object"&&s.DEFAULT===`hsl(var(--${r}))`&&!(r in e)&&delete s.DEFAULT;return t}function Ne(e,t){let r={},s=[...e];if(!t?.registries)return tt({}),s;for(let i=0;i<s.length;i++){if(Ft(s[i]))continue;let n=je(s[i],t);n&&(s[i]=n.url,Object.keys(n.headers).length>0&&(r[n.url]=n.headers));}return tt(r),s}async function me(e,t,r={}){return r={...r,sourceCache:r.sourceCache??new Map},await Promise.all(e.map(async i=>{let n$1=Ze(i);if(n$1.scheme==="github")return Di(n$1,r);if(pe(i))return xi(i);if(_(i)){let[a]=await L([i],r);try{return n.parse(a)}catch(h){throw new M(i,h)}}if(i.startsWith("@")&&t?.registries){let a=Ne([i],t),[h]=await L(a,r);try{return n.parse(h)}catch(l){throw new M(i,l)}}let o=`styles/${t?.style??"new-york-v4"}/${i}.json`,[c]=await L([o],r);try{return n.parse(c)}catch(a){throw new M(i,a)}}))}m.extend({type:f,_source:z$1.string().optional(),font:l.optional(),config:z$1.any().optional()}).passthrough();async function Bi(e,t,r={}){r={useCache:true,...r,sourceCache:r.sourceCache??new Map};let s=[],i=[],n$1=[],o=Array.from(new Set(e)),c=await me(o,t,r),a=new Map;for(let g=0;g<c.length;g++)c[g]&&a.set(o[g],c[g]);for(let[g,w]of Array.from(a.entries())){let v={...w,_source:g};if(s.push(v),w.registryDependencies){let b=w.registryDependencies;if(t?.registries)b=Ne(w.registryDependencies,t);else {let k=w.registryDependencies.filter($=>$.startsWith("@"));if(k.length>0){let{registry:$}=ce(k[0]);throw new ae($)}}let{items:I,registryNames:P}=await Me(b,t,r,new Set(o));i.push(...I),n$1.push(...P);}}if(s.push(...i),n$1.length>0){let g=Array.from(new Set(n$1)),w=g.filter(b=>!b.startsWith("@")),v=g.filter(b=>b.startsWith("@"));if(v.length>0){let b=await me(v,t,r);for(let I=0;I<b.length;I++){let k={...b[I],_source:v[I]};s.push(k);}}if(w.length>0){let b=await St();if(!b&&s.length===0)return null;if(b){w.includes("index")&&w.unshift("index");let I=[];for(let Q of w){let xo=await hl(Q,t,r);I.push(...xo);}let P=Array.from(new Set(I)),k=await L(P,r),$=z$1.array(n).parse(k);s.push(...$);}}}if(!s.length)return null;if((o.includes("index")||n$1.includes("index"))&&t.tailwind.baseColor){let g=await fl(t.tailwind.baseColor,t);g&&s.unshift(g);}let h=new Map;s.forEach(g=>{let w=g._source||g.name;h.set(g,w);}),s=pl(s,h),s.sort((g,w)=>g.type==="registry:theme"&&w.type!=="registry:theme"?-1:g.type!=="registry:theme"&&w.type==="registry:theme"?1:0);let l={};s.forEach(g=>{l=_e(l,g.tailwind??{});});let u$1={};s.forEach(g=>{u$1=_e(u$1,g.cssVars??{});});let d={};s.forEach(g=>{d=_e(d,g.css??{});});let f="";s.forEach(g=>{g.docs&&(f+=`${g.docs}
|
|
46
|
-
`);});let p={};s.forEach(g=>{p=_e(p,g.envVars??{});});let y=await ci(s.map(g=>g.files??[]),t),m=s.filter(g=>g.type==="registry:font"&&g.font).map(g=>({...g,type:"registry:font",font:g.font})),x=u.parse({dependencies:_e.all(s.map(g=>g.dependencies??[])),devDependencies:_e.all(s.map(g=>g.devDependencies??[])),files:y,tailwind:l,cssVars:u$1,css:d,docs:f,fonts:m.length>0?m:void 0});return Object.keys(p).length>0&&(x.envVars=p),x}async function Me(e,t,r={},s=new Set){let i=[],n=[];for(let o of e){if(s.has(o))continue;if(s.add(o),Ze(o).scheme==="github"){let[a]=await me([o],t,r);if(a&&(i.push({...a,_source:o}),a.registryDependencies)){let h=t?.registries?Ne(a.registryDependencies,t):a.registryDependencies,l=await Me(h,t,r,s);i.push(...l.items),n.push(...l.registryNames);}}else if(_(o)||pe(o)){let[a]=await me([o],t,r);if(a&&(i.push({...a,_source:o}),a.registryDependencies)){let h=t?.registries?Ne(a.registryDependencies,t):a.registryDependencies,l=await Me(h,t,r,s);i.push(...l.items),n.push(...l.registryNames);}}else if(o.startsWith("@")&&t?.registries){let{registry:a}=ce(o);if(a&&!(a in t.registries))throw new ae(a);let[h]=await me([o],t,r);if(h&&(i.push(h),h.registryDependencies)){let l=t?.registries?Ne(h.registryDependencies,t):h.registryDependencies,u=await Me(l,t,r,s);i.push(...u.items),n.push(...u.registryNames);}}else if(n.push(o),t)try{let[a]=await me([o],t,r);if(a&&a.registryDependencies){let h=t?.registries?Ne(a.registryDependencies,t):a.registryDependencies,l=await Me(h,t,r,s);i.push(...l.items),n.push(...l.registryNames);}}catch{}}return {items:i,registryNames:n}}async function hl(e,t,r={}){if(_(e))return [e];let{registryNames:s}=await Me([e],t,r,new Set),i=t.resolvedPaths?.cwd?await Fs(t.resolvedPaths.cwd,t.style):t.style,n=s.map(o=>Ht(_(o)?o:`styles/${i}/${o}.json`));return Array.from(new Set(n))}async function fl(e,t){let[r,s]=await Promise.all([Lt(e),kt(t)]);if(!r)return null;let i={name:e,type:"registry:theme",tailwind:{config:{theme:{extend:{borderRadius:{lg:"var(--radius)",md:"calc(var(--radius) - 2px)",sm:"calc(var(--radius) - 4px)"},colors:{}}}}},cssVars:{theme:{},light:{radius:"0.5rem"},dark:{}}};return t.tailwind.cssVariables&&(i.tailwind.config.theme.extend.colors={...i.tailwind.config.theme.extend.colors,...Ki(r.cssVars.dark??{})},i.cssVars={theme:{...r.cssVars.theme,...i.cssVars.theme},light:{...r.cssVars.light,...i.cssVars.light},dark:{...r.cssVars.dark,...i.cssVars.dark}},s==="v4"&&r.cssVarsV4&&(i.cssVars={theme:{...r.cssVarsV4.theme,...i.cssVars.theme},light:{radius:"0.625rem",...r.cssVarsV4.light},dark:{...r.cssVarsV4.dark}})),i}function ne(e,t){let r=t||e.name,s=createHash("sha256").update(r).digest("hex").substring(0,8);return `${e.name}::${s}`}function dl(e){let t=Ze(e);if(t.scheme==="github")return {name:t.item,hash:ne({name:t.item},e)};if(_(e)){let i=new URL(e).pathname,n=i.match(/\/([^/]+)\.json$/),o=n?n[1]:R__default.basename(i,".json");return {name:o,hash:ne({name:o},e)}}if(pe(e)){let s=e.match(/\/([^/]+)\.json$/),i=s?s[1]:R__default.basename(e,".json");return {name:i,hash:ne({name:i},e)}}let{item:r}=ce(e);return {name:r,hash:ne({name:r},e)}}function pl(e,t){let r=new Map,s=new Map,i=new Map,n=new Map;e.forEach(h=>{let l=t.get(h)||h.name,u=ne(h,l);r.set(u,h),s.set(u,h),i.set(u,0),n.set(u,[]);});let o=new Map;e.forEach(h=>{let l=t.get(h)||h.name,u=ne(h,l);o.has(h.name)||o.set(h.name,[]),o.get(h.name).push(u),l!==h.name&&(o.has(l)||o.set(l,[]),o.get(l).push(u));}),e.forEach(h=>{let l=t.get(h)||h.name,u=ne(h,l);h.registryDependencies&&h.registryDependencies.forEach(d=>{let f,p=o.get(d)||[];if(p.length===1)f=p[0];else if(p.length>1)f=p[0];else {let{name:y}=dl(d),m=o.get(y)||[];m.length>0&&(f=m[0]);}f&&r.has(f)&&(n.get(f).push(u),i.set(u,i.get(u)+1));});});let c=[],a=[];for(i.forEach((h,l)=>{h===0&&c.push(l);});c.length>0;){let h=c.shift(),l=r.get(h);a.push(l),n.get(h).forEach(u=>{let d=i.get(u)-1;i.set(u,d),d===0&&c.push(u);});}if(a.length!==e.length){let h=new Set(a.map(l=>{let u=t.get(l)||l.name;return ne(l,u)}));e.forEach(l=>{let u=t.get(l)||l.name,d=ne(l,u);h.has(d)||a.push(l);});}return a}var hr=["npm","yarn","yarn@berry","pnpm","pnpm@6","bun","deno"],fr={"bun.lock":"bun","bun.lockb":"bun","deno.lock":"deno","pnpm-lock.yaml":"pnpm","pnpm-workspace.yaml":"pnpm","yarn.lock":"yarn","package-lock.json":"npm","npm-shrinkwrap.json":"npm"},dr={"node_modules/.deno/":"deno","node_modules/.pnpm/":"pnpm","node_modules/.yarn-state.yml":"yarn","node_modules/.yarn_integrity":"yarn","node_modules/.package-lock.json":"npm",".pnp.cjs":"yarn",".pnp.js":"yarn","bun.lock":"bun","bun.lockb":"bun"},Ji={bun:"https://bun.sh",deno:"https://deno.com",pnpm:"https://pnpm.io/installation","pnpm@6":"https://pnpm.io/6.x/installation",yarn:"https://classic.yarnpkg.com/en/docs/install","yarn@berry":"https://yarnpkg.com/getting-started/install",npm:"https://docs.npmjs.com/cli/configuring-npm/install"};async function pr(e,t){try{let r=await Zi__default.stat(e);return t==="file"?r.isFile():r.isDirectory()}catch{return false}}function*gl(e=Z.cwd()){let t=R__default.resolve(e),{root:r}=R__default.parse(t);for(;t&&t!==r;)yield t,t=R__default.dirname(t);}async function Yi(e,t){return !e||!pr(e,"file")?null:await wl(e,t)}async function mr(e={}){let{cwd:t,strategies:r=["lockfile","packageManager-field","devEngines-field"],onUnknown:s}=e,i;if(typeof e.stopDir=="string"){let n=R__default.resolve(e.stopDir);i=o=>o===n;}else i=e.stopDir;for(let n of gl(t)){for(let o of r)switch(o){case "lockfile":{for(let c of Object.keys(fr))if(await pr(R__default.join(n,c),"file")){let a=fr[c],h=await Yi(R__default.join(n,"package.json"),s);return h||{name:a,agent:a}}break}case "packageManager-field":case "devEngines-field":{let c=await Yi(R__default.join(n,"package.json"),s);if(c)return c;break}case "install-metadata":{for(let c of Object.keys(dr)){let a=c.endsWith("/")?"dir":"file";if(await pr(R__default.join(n,c),a)){let h=dr[c],l=h==="yarn"?xl(c)?"yarn":"yarn@berry":h;return {name:h,agent:l}}}break}}if(i?.(n))break}return null}function yl(e){let t=r=>r?.match(/\d+(\.\d+){0,2}/)?.[0]??r;if(typeof e.packageManager=="string"){let[r,s]=e.packageManager.replace(/^\^/,"").split("@");return {name:r,ver:t(s)}}if(typeof e.devEngines?.packageManager?.name=="string")return {name:e.devEngines.packageManager.name,ver:t(e.devEngines.packageManager.version)}}async function wl(e,t){try{let r=JSON.parse(await Zi__default.readFile(e,"utf8")),s,i=yl(r);if(i){let n=i.name,o=i.ver,c=o;return n==="yarn"&&o&&Number.parseInt(o)>1?(s="yarn@berry",c="berry",{name:n,agent:s,version:c}):n==="pnpm"&&o&&Number.parseInt(o)<7?(s="pnpm@6",{name:n,agent:s,version:c}):hr.includes(n)?(s=n,{name:n,agent:s,version:c}):t?.(r.packageManager)??null}}catch{}return null}function xl(e){return e.endsWith(".yarn_integrity")}var Le=createRequire(import.meta.url),bl=Object.create,tn=Object.defineProperty,Rl=Object.getOwnPropertyDescriptor,Il=Object.getOwnPropertyNames,El=Object.getPrototypeOf,Sl=Object.prototype.hasOwnProperty,ye=(e=>typeof Le<"u"?Le:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof Le<"u"?Le:t)[r]}):e)(function(e){if(typeof Le<"u")return Le.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')}),G=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Cl=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Il(t))!Sl.call(e,i)&&i!==r&&tn(e,i,{get:()=>t[i],enumerable:!(s=Rl(t,i))||s.enumerable});return e},$l=(e,t,r)=>(r=e!=null?bl(El(e)):{},Cl(tn(r,"default",{value:e,enumerable:true}),e)),kl=G((e,t)=>{t.exports=n,n.sync=o;var r=ye("fs");function s(c,a){var h=a.pathExt!==void 0?a.pathExt:process.env.PATHEXT;if(!h||(h=h.split(";"),h.indexOf("")!==-1))return true;for(var l=0;l<h.length;l++){var u=h[l].toLowerCase();if(u&&c.substr(-u.length).toLowerCase()===u)return true}return false}function i(c,a,h){return !c.isSymbolicLink()&&!c.isFile()?false:s(a,h)}function n(c,a,h){r.stat(c,function(l,u){h(l,l?false:i(u,c,a));});}function o(c,a){return i(r.statSync(c),c,a)}}),Tl=G((e,t)=>{t.exports=s,s.sync=i;var r=ye("fs");function s(c,a,h){r.stat(c,function(l,u){h(l,l?false:n(u,a));});}function i(c,a){return n(r.statSync(c),a)}function n(c,a){return c.isFile()&&o(c,a)}function o(c,a){var h=c.mode,l=c.uid,u=c.gid,d=a.uid!==void 0?a.uid:process.getuid&&process.getuid(),f=a.gid!==void 0?a.gid:process.getgid&&process.getgid(),p=parseInt("100",8),y=parseInt("010",8),m=parseInt("001",8),x=p|y,g=h&m||h&y&&u===f||h&p&&l===d||h&x&&d===0;return g}}),Pl=G((e,t)=>{ye("fs");var s;process.platform==="win32"||global.TESTING_WINDOWS?s=kl():s=Tl(),t.exports=i,i.sync=n;function i(o,c,a){if(typeof c=="function"&&(a=c,c={}),!a){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(h,l){i(o,c||{},function(u,d){u?l(u):h(d);});})}s(o,c||{},function(h,l){h&&(h.code==="EACCES"||c&&c.ignoreErrors)&&(h=null,l=false),a(h,l);});}function n(o,c){try{return s.sync(o,c||{})}catch(a){if(c&&c.ignoreErrors||a.code==="EACCES")return false;throw a}}}),Al=G((e,t)=>{var r=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",s=ye("path"),i=r?";":":",n=Pl(),o=l=>Object.assign(new Error(`not found: ${l}`),{code:"ENOENT"}),c=(l,u)=>{let d=u.colon||i,f=l.match(/\//)||r&&l.match(/\\/)?[""]:[...r?[process.cwd()]:[],...(u.path||process.env.PATH||"").split(d)],p=r?u.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",y=r?p.split(d):[""];return r&&l.indexOf(".")!==-1&&y[0]!==""&&y.unshift(""),{pathEnv:f,pathExt:y,pathExtExe:p}},a=(l,u,d)=>{typeof u=="function"&&(d=u,u={}),u||(u={});let{pathEnv:f,pathExt:p,pathExtExe:y}=c(l,u),m=[],x=w=>new Promise((v,b)=>{if(w===f.length)return u.all&&m.length?v(m):b(o(l));let I=f[w],P=/^".*"$/.test(I)?I.slice(1,-1):I,k=s.join(P,l),$=!P&&/^\.[\\\/]/.test(l)?l.slice(0,2)+k:k;v(g($,w,0));}),g=(w,v,b)=>new Promise((I,P)=>{if(b===p.length)return I(x(v+1));let k=p[b];n(w+k,{pathExt:y},($,Q)=>{if(!$&&Q)if(u.all)m.push(w+k);else return I(w+k);return I(g(w,v,b+1))});});return d?x(0).then(w=>d(null,w),d):x(0)},h=(l,u)=>{u=u||{};let{pathEnv:d,pathExt:f,pathExtExe:p}=c(l,u),y=[];for(let m=0;m<d.length;m++){let x=d[m],g=/^".*"$/.test(x)?x.slice(1,-1):x,w=s.join(g,l),v=!g&&/^\.[\\\/]/.test(l)?l.slice(0,2)+w:w;for(let b=0;b<f.length;b++){let I=v+f[b];try{if(n.sync(I,{pathExt:p}))if(u.all)y.push(I);else return I}catch{}}}if(u.all&&y.length)return y;if(u.nothrow)return null;throw o(l)};t.exports=a,a.sync=h;}),Ol=G((e,t)=>{var r=(s={})=>{let i=s.env||process.env;return (s.platform||process.platform)!=="win32"?"PATH":Object.keys(i).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};t.exports=r,t.exports.default=r;}),jl=G((e,t)=>{var r=ye("path"),s=Al(),i=Ol();function n(c,a){let h=c.options.env||process.env,l=process.cwd(),u=c.options.cwd!=null,d=u&&process.chdir!==void 0&&!process.chdir.disabled;if(d)try{process.chdir(c.options.cwd);}catch{}let f;try{f=s.sync(c.command,{path:h[i({env:h})],pathExt:a?r.delimiter:void 0});}catch{}finally{d&&process.chdir(l);}return f&&(f=r.resolve(u?c.options.cwd:"",f)),f}function o(c){return n(c)||n(c,true)}t.exports=o;}),_l=G((e,t)=>{var r=/([()\][%!^"`<>&|;, *?])/g;function s(n){return n=n.replace(r,"^$1"),n}function i(n,o){return n=`${n}`,n=n.replace(/(\\*)"/g,'$1$1\\"'),n=n.replace(/(\\*)$/,"$1$1"),n=`"${n}"`,n=n.replace(r,"^$1"),o&&(n=n.replace(r,"^$1")),n}t.exports.command=s,t.exports.argument=i;}),Nl=G((e,t)=>{t.exports=/^#!(.*)/;}),Ml=G((e,t)=>{var r=Nl();t.exports=(s="")=>{let i=s.match(r);if(!i)return null;let[n,o]=i[0].replace(/#! ?/,"").split(" "),c=n.split("/").pop();return c==="env"?o:o?`${c} ${o}`:c};}),Ll=G((e,t)=>{var r=ye("fs"),s=Ml();function i(n){let o=Buffer.alloc(150),c;try{c=r.openSync(n,"r"),r.readSync(c,o,0,150,0),r.closeSync(c);}catch{}return s(o.toString())}t.exports=i;}),Fl=G((e,t)=>{var r=ye("path"),s=jl(),i=_l(),n=Ll(),o=process.platform==="win32",c=/\.(?:com|exe)$/i,a=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function h(d){d.file=s(d);let f=d.file&&n(d.file);return f?(d.args.unshift(d.file),d.command=f,s(d)):d.file}function l(d){if(!o)return d;let f=h(d),p=!c.test(f);if(d.options.forceShell||p){let y=a.test(f);d.command=r.normalize(d.command),d.command=i.command(d.command),d.args=d.args.map(x=>i.argument(x,y));let m=[d.command].concat(d.args).join(" ");d.args=["/d","/s","/c",`"${m}"`],d.command=process.env.comspec||"cmd.exe",d.options.windowsVerbatimArguments=true;}return d}function u(d,f,p){f&&!Array.isArray(f)&&(p=f,f=null),f=f?f.slice(0):[],p=Object.assign({},p);let y={command:d,args:f,options:p,file:void 0,original:{command:d,args:f}};return p.shell?y:l(y)}t.exports=u;}),Dl=G((e,t)=>{var r=process.platform==="win32";function s(c,a){return Object.assign(new Error(`${a} ${c.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${a} ${c.command}`,path:c.command,spawnargs:c.args})}function i(c,a){if(!r)return;let h=c.emit;c.emit=function(l,u){if(l==="exit"){let d=n(u,a);if(d)return h.call(c,"error",d)}return h.apply(c,arguments)};}function n(c,a){return r&&c===1&&!a.file?s(a.original,"spawn"):null}function o(c,a){return r&&c===1&&!a.file?s(a.original,"spawnSync"):null}t.exports={hookChildProcess:i,verifyENOENT:n,verifyENOENTSync:o,notFoundError:s};}),Wl=G((e,t)=>{var r=ye("child_process"),s=Fl(),i=Dl();function n(c,a,h){let l=s(c,a,h),u=r.spawn(l.command,l.args,l.options);return i.hookChildProcess(u,l),u}function o(c,a,h){let l=s(c,a,h),u=r.spawnSync(l.command,l.args,l.options);return u.error=u.error||i.verifyENOENTSync(u.status,l),u}t.exports=n,t.exports.spawn=n,t.exports.sync=o,t.exports._parse=s,t.exports._enoent=i;}),Kl=/^path$/i,Qi={key:"PATH",value:""};function ql(e){for(let t in e){if(!Object.prototype.hasOwnProperty.call(e,t)||!Kl.test(t))continue;let r=e[t];return r?{key:t,value:r}:Qi}return Qi}function Bl(e,t){let r=t.value.split(delimiter),s=e,i;do r.push(resolve(s,"node_modules",".bin")),i=s,s=dirname(s);while(s!==i);return {key:t.key,value:r.join(delimiter)}}function Jl(e,t){let r={...process.env,...t},s=Bl(e,ql(r));return r[s.key]=s.value,r}var Zl=e=>{let t=e.length,r=new PassThrough,s=()=>{--t===0&&r.emit("end");};for(let i of e)i.pipe(r,{end:false}),i.on("end",s);return r},Xl=$l(Wl()),en=class extends Error{result;output;get exitCode(){if(this.result.exitCode!==null)return this.result.exitCode}constructor(e,t){super(`Process exited with non-zero status (${e.exitCode})`),this.result=e,this.output=t;}},eu={timeout:void 0,persist:false},tu={windowsHide:true};function ru(e,t){return {command:normalize(e),args:t??[]}}function su(e){let t=new AbortController;for(let r of e){if(r.aborted)return t.abort(),r;let s=()=>{t.abort(r.reason);};r.addEventListener("abort",s,{signal:t.signal});}return t.signal}var iu=class{_process;_aborted=false;_options;_command;_args;_resolveClose;_processClosed;_thrownError;get process(){return this._process}get pid(){return this._process?.pid}get exitCode(){if(this._process&&this._process.exitCode!==null)return this._process.exitCode}constructor(e,t,r){this._options={...eu,...r},this._command=e,this._args=t??[],this._processClosed=new Promise(s=>{this._resolveClose=s;});}kill(e){return this._process?.kill(e)===true}get aborted(){return this._aborted}get killed(){return this._process?.killed===true}pipe(e,t,r){return nu(e,t,{...r,stdin:this})}async*[Symbol.asyncIterator](){let e=this._process;if(!e)return;let t=[];this._streamErr&&t.push(this._streamErr),this._streamOut&&t.push(this._streamOut);let r=Zl(t),s=Ql.createInterface({input:r});for await(let i of s)yield i.toString();if(await this._processClosed,e.removeAllListeners(),this._thrownError)throw this._thrownError;if(this._options?.throwOnError&&this.exitCode!==0&&this.exitCode!==void 0)throw new en(this)}async _waitForOutput(){let e=this._process;if(!e)throw new Error("No process was started");let t="",r="";if(this._streamOut)for await(let i of this._streamOut)r+=i.toString();if(this._streamErr)for await(let i of this._streamErr)t+=i.toString();if(await this._processClosed,this._options?.stdin&&await this._options.stdin,e.removeAllListeners(),this._thrownError)throw this._thrownError;let s={stderr:t,stdout:r,exitCode:this.exitCode};if(this._options.throwOnError&&this.exitCode!==0&&this.exitCode!==void 0)throw new en(this,s);return s}then(e,t){return this._waitForOutput().then(e,t)}_streamOut;_streamErr;spawn(){let e=cwd(),t=this._options,r={...tu,...t.nodeOptions},s=[];this._resetState(),t.timeout!==void 0&&s.push(AbortSignal.timeout(t.timeout)),t.signal!==void 0&&s.push(t.signal),t.persist===true&&(r.detached=true),s.length>0&&(r.signal=su(s)),r.env=Jl(e,r.env);let{command:i,args:n}=ru(this._command,this._args),o=(0, Xl._parse)(i,n,r),c=spawn(o.command,o.args,o.options);if(c.stderr&&(this._streamErr=c.stderr),c.stdout&&(this._streamOut=c.stdout),this._process=c,c.once("error",this._onError),c.once("close",this._onClose),t.stdin!==void 0&&c.stdin&&t.stdin.process){let{stdout:a}=t.stdin.process;a&&a.pipe(c.stdin);}}_resetState(){this._aborted=false,this._processClosed=new Promise(e=>{this._resolveClose=e;}),this._thrownError=void 0;}_onError=e=>{if(e.name==="AbortError"&&(!(e.cause instanceof Error)||e.cause.name!=="TimeoutError")){this._aborted=true;return}this._thrownError=e;};_onClose=()=>{this._resolveClose&&this._resolveClose();}},gr=(e,t,r)=>{let s=new iu(e,t,r);return s.spawn(),s},nu=gr;function is(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var wr={},xr,sn;function B(){if(sn)return xr;sn=1;let e,t,r,s,i=true;typeof process<"u"&&({FORCE_COLOR:e,NODE_DISABLE_COLORS:t,NO_COLOR:r,TERM:s}=process.env||{},i=process.stdout&&process.stdout.isTTY);let n={enabled:!t&&r==null&&s!=="dumb"&&(e!=null&&e!=="0"||i),reset:a(0,0),bold:a(1,22),dim:a(2,22),italic:a(3,23),underline:a(4,24),inverse:a(7,27),hidden:a(8,28),strikethrough:a(9,29),black:a(30,39),red:a(31,39),green:a(32,39),yellow:a(33,39),blue:a(34,39),magenta:a(35,39),cyan:a(36,39),white:a(37,39),gray:a(90,39),grey:a(90,39),bgBlack:a(40,49),bgRed:a(41,49),bgGreen:a(42,49),bgYellow:a(43,49),bgBlue:a(44,49),bgMagenta:a(45,49),bgCyan:a(46,49),bgWhite:a(47,49)};function o(h,l){let u=0,d,f="",p="";for(;u<h.length;u++)d=h[u],f+=d.open,p+=d.close,~l.indexOf(d.close)&&(l=l.replace(d.rgx,d.close+d.open));return f+l+p}function c(h,l){let u={has:h,keys:l};return u.reset=n.reset.bind(u),u.bold=n.bold.bind(u),u.dim=n.dim.bind(u),u.italic=n.italic.bind(u),u.underline=n.underline.bind(u),u.inverse=n.inverse.bind(u),u.hidden=n.hidden.bind(u),u.strikethrough=n.strikethrough.bind(u),u.black=n.black.bind(u),u.red=n.red.bind(u),u.green=n.green.bind(u),u.yellow=n.yellow.bind(u),u.blue=n.blue.bind(u),u.magenta=n.magenta.bind(u),u.cyan=n.cyan.bind(u),u.white=n.white.bind(u),u.gray=n.gray.bind(u),u.grey=n.grey.bind(u),u.bgBlack=n.bgBlack.bind(u),u.bgRed=n.bgRed.bind(u),u.bgGreen=n.bgGreen.bind(u),u.bgYellow=n.bgYellow.bind(u),u.bgBlue=n.bgBlue.bind(u),u.bgMagenta=n.bgMagenta.bind(u),u.bgCyan=n.bgCyan.bind(u),u.bgWhite=n.bgWhite.bind(u),u}function a(h,l){let u={open:`\x1B[${h}m`,close:`\x1B[${l}m`,rgx:new RegExp(`\\x1b\\[${l}m`,"g")};return function(d){return this!==void 0&&this.has!==void 0?(~this.has.indexOf(h)||(this.has.push(h),this.keys.push(u)),d===void 0?this:n.enabled?o(this.keys,d+""):d+""):d===void 0?c([h],[u]):n.enabled?o([u],d+""):d+""}}return xr=n,xr}var vr,nn;function mu(){return nn||(nn=1,vr=(e,t)=>{if(!(e.meta&&e.name!=="escape")){if(e.ctrl)return e.name==="a"?"first":e.name==="c"||e.name==="d"?"abort":e.name==="e"?"last":e.name==="g"?"reset":e.name==="n"?"down":e.name==="p"?"up":void 0;if(t){if(e.name==="j")return "down";if(e.name==="k")return "up"}return e.name==="return"||e.name==="enter"?"submit":e.name==="backspace"?"delete":e.name==="delete"?"deleteForward":e.name==="abort"?"abort":e.name==="escape"?"exit":e.name==="tab"?"next":e.name==="pagedown"?"nextPage":e.name==="pageup"?"prevPage":e.name==="home"?"home":e.name==="end"?"end":e.name==="up"?"up":e.name==="down"?"down":e.name==="right"?"right":e.name==="left"?"left":false}}),vr}var br,on;function ns(){return on||(on=1,br=e=>{let t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))"].join("|"),r=new RegExp(t,"g");return typeof e=="string"?e.replace(r,""):e}),br}var Rr,an;function J(){if(an)return Rr;an=1;let e="\x1B",t=`${e}[`,r="\x07",s={to(o,c){return c?`${t}${c+1};${o+1}H`:`${t}${o+1}G`},move(o,c){let a="";return o<0?a+=`${t}${-o}D`:o>0&&(a+=`${t}${o}C`),c<0?a+=`${t}${-c}A`:c>0&&(a+=`${t}${c}B`),a},up:(o=1)=>`${t}${o}A`,down:(o=1)=>`${t}${o}B`,forward:(o=1)=>`${t}${o}C`,backward:(o=1)=>`${t}${o}D`,nextLine:(o=1)=>`${t}E`.repeat(o),prevLine:(o=1)=>`${t}F`.repeat(o),left:`${t}G`,hide:`${t}?25l`,show:`${t}?25h`,save:`${e}7`,restore:`${e}8`},i={up:(o=1)=>`${t}S`.repeat(o),down:(o=1)=>`${t}T`.repeat(o)},n={screen:`${t}2J`,up:(o=1)=>`${t}1J`.repeat(o),down:(o=1)=>`${t}J`.repeat(o),line:`${t}2K`,lineEnd:`${t}K`,lineStart:`${t}1K`,lines(o){let c="";for(let a=0;a<o;a++)c+=this.line+(a<o-1?s.up():"");return o&&(c+=s.left),c}};return Rr={cursor:s,scroll:i,erase:n,beep:r},Rr}var Ir,cn;function gu(){if(cn)return Ir;cn=1;let e=ns(),{erase:t,cursor:r}=J(),s=i=>[...e(i)].length;return Ir=function(i,n){if(!n)return t.line+r.to(0);let o=0,c=i.split(/\r?\n/);for(let a of c)o+=1+Math.floor(Math.max(s(a)-1,0)/n);return t.lines(o)},Ir}var Er,ln;function Zn(){if(ln)return Er;ln=1;let e={arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",radioOn:"\u25C9",radioOff:"\u25EF",tick:"\u2714",cross:"\u2716",ellipsis:"\u2026",pointerSmall:"\u203A",line:"\u2500",pointer:"\u276F"},t={arrowUp:e.arrowUp,arrowDown:e.arrowDown,arrowLeft:e.arrowLeft,arrowRight:e.arrowRight,radioOn:"(*)",radioOff:"( )",tick:"\u221A",cross:"\xD7",ellipsis:"...",pointerSmall:"\xBB",line:"\u2500",pointer:">"};return Er=process.platform==="win32"?t:e,Er}var Sr,un;function yu(){if(un)return Sr;un=1;let e=B(),t=Zn(),r=Object.freeze({password:{scale:1,render:a=>"*".repeat(a.length)},emoji:{scale:2,render:a=>"\u{1F603}".repeat(a.length)},invisible:{scale:0,render:a=>""},default:{scale:1,render:a=>`${a}`}}),s=a=>r[a]||r.default,i=Object.freeze({aborted:e.red(t.cross),done:e.green(t.tick),exited:e.yellow(t.cross),default:e.cyan("?")});return Sr={styles:r,render:s,symbols:i,symbol:(a,h,l)=>h?i.aborted:l?i.exited:a?i.done:i.default,delimiter:a=>e.gray(a?t.ellipsis:t.pointerSmall),item:(a,h)=>e.gray(a?h?t.pointerSmall:"+":t.line)},Sr}var Cr,hn;function wu(){if(hn)return Cr;hn=1;let e=ns();return Cr=function(t,r){let s=String(e(t)||"").split(/\r?\n/);return r?s.map(i=>Math.ceil(i.length/r)).reduce((i,n)=>i+n):s.length},Cr}var $r,fn;function xu(){return fn||(fn=1,$r=(e,t={})=>{let r=Number.isSafeInteger(parseInt(t.margin))?new Array(parseInt(t.margin)).fill(" ").join(""):t.margin||"",s=t.width;return (e||"").split(/\r?\n/g).map(i=>i.split(/\s+/g).reduce((n,o)=>(o.length+r.length>=s||n[n.length-1].length+o.length+1<s?n[n.length-1]+=` ${o}`:n.push(`${r}${o}`),n),[r]).join(`
|
|
45
|
+
`)}var Gc="https://raw.githubusercontent.com",Uc=8;async function Hi(e,t={}){t={...t,sourceCache:t.sourceCache??new Map};let r=or(e,t);return sr(e.item,r,{source:Se(e)})}async function zi(e,t={}){t={...t,sourceCache:t.sourceCache??new Map};let r=or(e,t);return ir(r,{source:Se(e)})}async function Fm(e,t={}){let r=Se(e),s=`${r}/registry.json`,i=new Set,n=t.sourceCache??new Map,o={...t,sourceCache:n},c=or(e,o),a={async readText(h){return h.endsWith("registry.json")&&i.add(`${r}/${h}`),c.readText(h)}};try{let h=await ir(a,{source:r}),u=(await Bc(h.items,Uc,async(d,f)=>{try{return await sr(d.name,a,{source:r}),null}catch(p){return Wi(p,{defaultRegistryFile:s,itemName:d.name,itemIndex:f,sourceLabel:r})}})).filter(d=>d!==null);return {valid:u.length===0,cwd:r,registryFiles:i.size,registryFilePaths:Array.from(i),items:h.items.length,diagnostics:u}}catch(h){return {valid:false,cwd:r,registryFiles:i.size||1,registryFilePaths:i.size?Array.from(i):[s],items:0,diagnostics:[Wi(h,{defaultRegistryFile:s,sourceLabel:r})]}}}function or(e,t){let r=Ei(e,{cache:t.sourceCache});return {async readText(s){let i=await r,n=qc(e,i,s);if(t.useCache!==false&&t.sourceCache?.has(n))return t.sourceCache.get(n);let o=Kc(n,s,e);return t.useCache!==false&&t.sourceCache?.set(n,o),o}}}async function Kc(e,t,r){let s;try{s=await zt(e,{headers:new Headers({"Accept-Encoding":"identity","User-Agent":"shadcn"})});}catch(i){throw new H(t,i,{message:`Failed to read GitHub source file "${t}" from ${Se(r)}.`,context:{reason:"github-source-file",url:e,source:Se(r),filePath:t},suggestion:"GitHub ref resolution succeeded, but the CLI could not fetch from raw.githubusercontent.com. Check that raw.githubusercontent.com is accessible from this network."})}if(!s.ok)throw new H(t,void 0,{message:`Failed to read GitHub source file "${t}" from ${Se(r)}.`,context:{reason:"github-source-file",url:e,statusCode:s.status,source:Se(r),filePath:t},suggestion:t==="registry.json"?"The GitHub repository and ref were resolved, but raw.githubusercontent.com did not return a root registry.json file. Check that the public repository has registry.json at its root and that raw.githubusercontent.com is accessible from this network.":"Check that the file path exists in the public GitHub repository."});return s.text()}function qc(e,t,r){let s=r.split("/").map(i=>encodeURIComponent(i)).join("/");return `${Gc}/${e.owner}/${e.repo}/${t}/${s}`}async function Bc(e,t,r){let s=new Array(e.length),i=0,n=Math.min(t,e.length),o=Array.from({length:n},async()=>{for(;i<e.length;){let c=i++;s[c]=await r(e[c],c);}});return await Promise.all(o),s}function Se(e){return `${e.owner}/${e.repo}#${e.ref??"HEAD"}`}function Wi(e,t){return e instanceof j?{registryFile:typeof e.context?.registryFile=="string"?`${t.sourceLabel}/${e.context.registryFile}`:t.defaultRegistryFile,itemName:t.itemName,itemIndex:typeof e.context?.itemIndex=="number"?e.context.itemIndex:t.itemIndex,filePath:typeof e.context?.itemFilePath=="string"?e.context.itemFilePath:typeof e.context?.filePath=="string"?e.context.filePath:void 0,includePath:typeof e.context?.includePath=="string"?e.context.includePath:void 0,message:e.message,suggestion:e.suggestion}:{registryFile:t.defaultRegistryFile,itemName:t.itemName,itemIndex:t.itemIndex,message:e instanceof Error?e.message:"Unknown error."}}async function Xm(e,t,r){if(!e||(r={silent:false,tailwindVersion:"v3",...r},r.tailwindVersion==="v4"))return;let s=R__default.relative(t.resolvedPaths.cwd,t.resolvedPaths.tailwindConfig),i=Ee(`Updating ${T.info(s)}`,{silent:r.silent}).start(),n=await promises.readFile(t.resolvedPaths.tailwindConfig,"utf8"),o=await el(n,e,t);await promises.writeFile(t.resolvedPaths.tailwindConfig,o,"utf8"),i?.succeed();}async function el(e,t,r){let s=await Gi(e,r),i=s.getDescendantsOfKind(SyntaxKind.ObjectLiteralExpression).find(o=>o.getProperties().some(c=>c.isKind(SyntaxKind.PropertyAssignment)&&c.getName()==="content"));if(!i)return e;let n=il(i);return tl(i,{name:"darkMode",value:"class"},{quoteChar:n}),t.plugins?.forEach(o=>{sl(i,o);}),t.theme&&await rl(i,t.theme),s.getFullText()}function tl(e,t,{quoteChar:r}){let s=e.getProperty("darkMode");if(!s){let i={name:t.name,initializer:`[${r}${t.value}${r}]`};return t.name==="darkMode"?(e.insertPropertyAssignment(0,i),e):(e.addPropertyAssignment(i),e)}if(s.isKind(SyntaxKind.PropertyAssignment)){let i=s.getInitializer(),n=`${r}${t.value}${r}`;if(i?.isKind(SyntaxKind.StringLiteral)){let o=i.getText();return i.replaceWithText(`[${o}, ${n}]`),e}if(i?.isKind(SyntaxKind.ArrayLiteralExpression)){if(i.getElements().map(o=>o.getText()).includes(n))return e;i.addElement(n);}return e}return e}async function rl(e,t){e.getProperty("theme")||e.addPropertyAssignment({name:"theme",initializer:"{}"}),cr(e);let s=(e.getPropertyOrThrow("theme")?.asKindOrThrow(SyntaxKind.PropertyAssignment)).getInitializer();if(s?.isKind(SyntaxKind.ObjectLiteralExpression)){let i=s.getText(),n=await nl(i),o=_e(n,t,{arrayMerge:(a,h)=>h}),c=Zc(o).replace(/\'\.\.\.(.*)\'/g,"...$1").replace(/\'\"/g,"'").replace(/\"\'/g,"'").replace(/\'\[/g,"[").replace(/\]\'/g,"]").replace(/\'\\\'/g,"'").replace(/\\\'/g,"'").replace(/\\\'\'/g,"'").replace(/\'\'/g,"'");s.replaceWithText(c);}lr(e);}function sl(e,t){let r=e.getProperty("plugins");if(!r)return e.addPropertyAssignment({name:"plugins",initializer:`[${t}]`}),e;if(r.isKind(SyntaxKind.PropertyAssignment)){let s=r.getInitializer();if(s?.isKind(SyntaxKind.ArrayLiteralExpression)){if(s.getElements().map(i=>i.getText().replace(/["']/g,"")).includes(t.replace(/["']/g,"")))return e;s.addElement(t);}return e}return e}async function Gi(e,t){let r=await promises.mkdtemp(R__default.join(tmpdir(),"shadcn-")),s=t?.resolvedPaths?.tailwindConfig||"tailwind.config.ts",i=R__default.join(r,`shadcn-${R__default.basename(s)}`);return new Project({compilerOptions:{}}).createSourceFile(i,e,{scriptKind:R__default.extname(s)===".ts"?ScriptKind.TS:ScriptKind.JS})}function il(e){return e.getFirstDescendantByKind(SyntaxKind.StringLiteral)?.getQuoteKind()===QuoteKind.Single?"'":'"'}function cr(e){let t=e.getProperties();for(let r=0;r<t.length;r++){let s=t[r];if(s.isKind(SyntaxKind.SpreadAssignment)){let i=s.asKindOrThrow(SyntaxKind.SpreadAssignment),n=i.getExpression().getText();e.insertPropertyAssignment(r,{name:`"___${n.replace(/^\.\.\./,"")}"`,initializer:`"...${n.replace(/^\.\.\./,"")}"`}),i.remove();}else if(s.isKind(SyntaxKind.PropertyAssignment)){let n=s.asKindOrThrow(SyntaxKind.PropertyAssignment).getInitializer();n&&n.isKind(SyntaxKind.ObjectLiteralExpression)?cr(n.asKindOrThrow(SyntaxKind.ObjectLiteralExpression)):n&&n.isKind(SyntaxKind.ArrayLiteralExpression)&&Ui(n.asKindOrThrow(SyntaxKind.ArrayLiteralExpression));}}}function Ui(e){let t=e.getElements();for(let r=0;r<t.length;r++){let s=t[r];if(s.isKind(SyntaxKind.ObjectLiteralExpression))cr(s.asKindOrThrow(SyntaxKind.ObjectLiteralExpression));else if(s.isKind(SyntaxKind.ArrayLiteralExpression))Ui(s.asKindOrThrow(SyntaxKind.ArrayLiteralExpression));else if(s.isKind(SyntaxKind.SpreadElement)){let i=s.getText();e.removeElement(r),e.insertElement(r,`"${i}"`);}}}function lr(e){let t=e.getProperties();for(let r=0;r<t.length;r++){let s=t[r];if(s.isKind(SyntaxKind.PropertyAssignment)){let i=s,n=i.getInitializer();if(n&&n.isKind(SyntaxKind.StringLiteral)){let o=n.asKindOrThrow(SyntaxKind.StringLiteral).getLiteralValue();o.startsWith("...")&&(e.insertSpreadAssignment(r,{expression:o.slice(3)}),i.remove());}else n?.isKind(SyntaxKind.ObjectLiteralExpression)?lr(n):n&&n.isKind(SyntaxKind.ArrayLiteralExpression)&&Ki(n.asKindOrThrow(SyntaxKind.ArrayLiteralExpression));}}}function Ki(e){let t=e.getElements();for(let r=0;r<t.length;r++){let s=t[r];if(s.isKind(SyntaxKind.ObjectLiteralExpression))lr(s.asKindOrThrow(SyntaxKind.ObjectLiteralExpression));else if(s.isKind(SyntaxKind.ArrayLiteralExpression))Ki(s.asKindOrThrow(SyntaxKind.ArrayLiteralExpression));else if(s.isKind(SyntaxKind.StringLiteral)){let i=s.getText(),n=/(?:^['"])(\.\.\..*)(?:['"]$)/g;n.test(i)&&(e.removeElement(r),e.insertElement(r,i.replace(n,"$1")));}}}async function nl(e){let r=(await Gi(`const theme = ${e}`,null)).getStatements()[0];if(r?.getKind()===SyntaxKind.VariableStatement){let i=(r.getDeclarationList()?.getDeclarations()[0]).getInitializer();if(i?.isKind(SyntaxKind.ObjectLiteralExpression))return await Vt(i)}throw new Error("Invalid input: not an object literal")}function Vt(e){let t={};for(let r of e.getProperties())if(r.isKind(SyntaxKind.PropertyAssignment)){let s=r.getName().replace(/\'/g,"");r.getInitializer()?.isKind(SyntaxKind.ObjectLiteralExpression)?t[s]=Vt(r.getInitializer()):r.getInitializer()?.isKind(SyntaxKind.ArrayLiteralExpression)?t[s]=qi(r.getInitializer()):t[s]=ur(r.getInitializer());}return t}function qi(e){let t=[];for(let r of e.getElements())r.isKind(SyntaxKind.ObjectLiteralExpression)?t.push(Vt(r.asKindOrThrow(SyntaxKind.ObjectLiteralExpression))):r.isKind(SyntaxKind.ArrayLiteralExpression)?t.push(qi(r.asKindOrThrow(SyntaxKind.ArrayLiteralExpression))):t.push(ur(r));return t}function ur(e){switch(e.getKind()){case SyntaxKind.StringLiteral:return e.getText();case SyntaxKind.NumericLiteral:return Number(e.getText());case SyntaxKind.TrueKeyword:return true;case SyntaxKind.FalseKeyword:return false;case SyntaxKind.NullKeyword:return null;case SyntaxKind.ArrayLiteralExpression:return e.getElements().map(ur);case SyntaxKind.ObjectLiteralExpression:return Vt(e);default:return e.getText()}}function Bi(e){let t={};for(let r of Object.keys(e)){let s=r.split("-"),i=s[0],n=s.slice(1).join("-");n===""?typeof t[i]=="object"?t[i].DEFAULT=`hsl(var(--${r}))`:t[i]=`hsl(var(--${r}))`:(typeof t[i]!="object"&&(t[i]={DEFAULT:`hsl(var(--${i}))`}),t[i][n]=`hsl(var(--${r}))`);}for(let[r,s]of Object.entries(t))typeof s=="object"&&s.DEFAULT===`hsl(var(--${r}))`&&!(r in e)&&delete s.DEFAULT;return t}function Ne(e,t){let r={},s=[...e];if(!t?.registries)return tt({}),s;for(let i=0;i<s.length;i++){if(Ft(s[i]))continue;let n=je(s[i],t);n&&(s[i]=n.url,Object.keys(n.headers).length>0&&(r[n.url]=n.headers));}return tt(r),s}async function me(e,t,r={}){return r={...r,sourceCache:r.sourceCache??new Map},await Promise.all(e.map(async i=>{let n$1=Ze(i);if(n$1.scheme==="github")return Hi(n$1,r);if(pe(i))return bi(i);if(_(i)){let[a]=await L([i],r);try{return n.parse(a)}catch(h){throw new M(i,h)}}if(i.startsWith("@")&&t?.registries){let a=Ne([i],t),[h]=await L(a,r);try{return n.parse(h)}catch(l){throw new M(i,l)}}let o=`styles/${t?.style??"new-york-v4"}/${i}.json`,[c]=await L([o],r);try{return n.parse(c)}catch(a){throw new M(i,a)}}))}m.extend({type:f,_source:z$1.string().optional(),font:l.optional(),config:z$1.any().optional()}).passthrough();async function Yi(e,t,r={}){r={useCache:true,...r,sourceCache:r.sourceCache??new Map};let s=[],i=[],n$1=[],o=Array.from(new Set(e)),c=await me(o,t,r),a=new Map;for(let g=0;g<c.length;g++)c[g]&&a.set(o[g],c[g]);for(let[g,w]of Array.from(a.entries())){let v={...w,_source:g};if(s.push(v),w.registryDependencies){let b=w.registryDependencies;if(t?.registries)b=Ne(w.registryDependencies,t);else {let k=w.registryDependencies.filter($=>$.startsWith("@"));if(k.length>0){let{registry:$}=ce(k[0]);throw new ae($)}}let{items:E,registryNames:P}=await Me(b,t,r,new Set(o));i.push(...E),n$1.push(...P);}}if(s.push(...i),n$1.length>0){let g=Array.from(new Set(n$1)),w=g.filter(b=>!b.startsWith("@")),v=g.filter(b=>b.startsWith("@"));if(v.length>0){let b=await me(v,t,r);for(let E=0;E<b.length;E++){let k={...b[E],_source:v[E]};s.push(k);}}if(w.length>0){let b=await St();if(!b&&s.length===0)return null;if(b){w.includes("index")&&w.unshift("index");let E=[];for(let Q of w){let bo=await al(Q,t,r);E.push(...bo);}let P=Array.from(new Set(E)),k=await L(P,r),$=z$1.array(n).parse(k);s.push(...$);}}}if(!s.length)return null;if((o.includes("index")||n$1.includes("index"))&&t.tailwind.baseColor){let g=await cl(t.tailwind.baseColor,t);g&&s.unshift(g);}let h=new Map;s.forEach(g=>{let w=g._source||g.name;h.set(g,w);}),s=ul(s,h),s.sort((g,w)=>g.type==="registry:theme"&&w.type!=="registry:theme"?-1:g.type!=="registry:theme"&&w.type==="registry:theme"?1:0);let l={};s.forEach(g=>{l=_e(l,g.tailwind??{});});let u$1={};s.forEach(g=>{u$1=_e(u$1,g.cssVars??{});});let d={};s.forEach(g=>{d=_e(d,g.css??{});});let f="";s.forEach(g=>{g.docs&&(f+=`${g.docs}
|
|
46
|
+
`);});let p={};s.forEach(g=>{p=_e(p,g.envVars??{});});let y=await li(s.map(g=>g.files??[]),t),m=s.filter(g=>g.type==="registry:font"&&g.font).map(g=>({...g,type:"registry:font",font:g.font})),x=u.parse({dependencies:_e.all(s.map(g=>g.dependencies??[])),devDependencies:_e.all(s.map(g=>g.devDependencies??[])),files:y,tailwind:l,cssVars:u$1,css:d,docs:f,fonts:m.length>0?m:void 0});return Object.keys(p).length>0&&(x.envVars=p),x}async function Me(e,t,r={},s=new Set){let i=[],n=[];for(let o of e){if(s.has(o))continue;if(s.add(o),Ze(o).scheme==="github"){let[a]=await me([o],t,r);if(a&&(i.push({...a,_source:o}),a.registryDependencies)){let h=t?.registries?Ne(a.registryDependencies,t):a.registryDependencies,l=await Me(h,t,r,s);i.push(...l.items),n.push(...l.registryNames);}}else if(_(o)||pe(o)){let[a]=await me([o],t,r);if(a&&(i.push({...a,_source:o}),a.registryDependencies)){let h=t?.registries?Ne(a.registryDependencies,t):a.registryDependencies,l=await Me(h,t,r,s);i.push(...l.items),n.push(...l.registryNames);}}else if(o.startsWith("@")&&t?.registries){let{registry:a}=ce(o);if(a&&!(a in t.registries))throw new ae(a);let[h]=await me([o],t,r);if(h&&(i.push(h),h.registryDependencies)){let l=t?.registries?Ne(h.registryDependencies,t):h.registryDependencies,u=await Me(l,t,r,s);i.push(...u.items),n.push(...u.registryNames);}}else if(n.push(o),t)try{let[a]=await me([o],t,r);if(a&&a.registryDependencies){let h=t?.registries?Ne(a.registryDependencies,t):a.registryDependencies,l=await Me(h,t,r,s);i.push(...l.items),n.push(...l.registryNames);}}catch{}}return {items:i,registryNames:n}}async function al(e,t,r={}){if(_(e))return [e];let{registryNames:s}=await Me([e],t,r,new Set),i=t.resolvedPaths?.cwd?await Ds(t.resolvedPaths.cwd,t.style):t.style,n=s.map(o=>Ht(_(o)?o:`styles/${i}/${o}.json`));return Array.from(new Set(n))}async function cl(e,t){let[r,s]=await Promise.all([Lt(e),kt(t)]);if(!r)return null;let i={name:e,type:"registry:theme",tailwind:{config:{theme:{extend:{borderRadius:{lg:"var(--radius)",md:"calc(var(--radius) - 2px)",sm:"calc(var(--radius) - 4px)"},colors:{}}}}},cssVars:{theme:{},light:{radius:"0.5rem"},dark:{}}};return t.tailwind.cssVariables&&(i.tailwind.config.theme.extend.colors={...i.tailwind.config.theme.extend.colors,...Bi(r.cssVars.dark??{})},i.cssVars={theme:{...r.cssVars.theme,...i.cssVars.theme},light:{...r.cssVars.light,...i.cssVars.light},dark:{...r.cssVars.dark,...i.cssVars.dark}},s==="v4"&&r.cssVarsV4&&(i.cssVars={theme:{...r.cssVarsV4.theme,...i.cssVars.theme},light:{radius:"0.625rem",...r.cssVarsV4.light},dark:{...r.cssVarsV4.dark}})),i}function ne(e,t){let r=t||e.name,s=createHash("sha256").update(r).digest("hex").substring(0,8);return `${e.name}::${s}`}function ll(e){let t=Ze(e);if(t.scheme==="github")return {name:t.item,hash:ne({name:t.item},e)};if(_(e)){let i=new URL(e).pathname,n=i.match(/\/([^/]+)\.json$/),o=n?n[1]:R__default.basename(i,".json");return {name:o,hash:ne({name:o},e)}}if(pe(e)){let s=e.match(/\/([^/]+)\.json$/),i=s?s[1]:R__default.basename(e,".json");return {name:i,hash:ne({name:i},e)}}let{item:r}=ce(e);return {name:r,hash:ne({name:r},e)}}function ul(e,t){let r=new Map,s=new Map,i=new Map,n=new Map;e.forEach(h=>{let l=t.get(h)||h.name,u=ne(h,l);r.set(u,h),s.set(u,h),i.set(u,0),n.set(u,[]);});let o=new Map;e.forEach(h=>{let l=t.get(h)||h.name,u=ne(h,l);o.has(h.name)||o.set(h.name,[]),o.get(h.name).push(u),l!==h.name&&(o.has(l)||o.set(l,[]),o.get(l).push(u));}),e.forEach(h=>{let l=t.get(h)||h.name,u=ne(h,l);h.registryDependencies&&h.registryDependencies.forEach(d=>{let f,p=o.get(d)||[];if(p.length===1)f=p[0];else if(p.length>1)f=p[0];else {let{name:y}=ll(d),m=o.get(y)||[];m.length>0&&(f=m[0]);}f&&r.has(f)&&(n.get(f).push(u),i.set(u,i.get(u)+1));});});let c=[],a=[];for(i.forEach((h,l)=>{h===0&&c.push(l);});c.length>0;){let h=c.shift(),l=r.get(h);a.push(l),n.get(h).forEach(u=>{let d=i.get(u)-1;i.set(u,d),d===0&&c.push(u);});}if(a.length!==e.length){let h=new Set(a.map(l=>{let u=t.get(l)||l.name;return ne(l,u)}));e.forEach(l=>{let u=t.get(l)||l.name,d=ne(l,u);h.has(d)||a.push(l);});}return a}var fr=["npm","yarn","yarn@berry","pnpm","pnpm@6","bun","deno"],dr={"bun.lock":"bun","bun.lockb":"bun","deno.lock":"deno","pnpm-lock.yaml":"pnpm","pnpm-workspace.yaml":"pnpm","yarn.lock":"yarn","package-lock.json":"npm","npm-shrinkwrap.json":"npm"},pr={"node_modules/.deno/":"deno","node_modules/.pnpm/":"pnpm","node_modules/.yarn-state.yml":"yarn","node_modules/.yarn_integrity":"yarn","node_modules/.package-lock.json":"npm",".pnp.cjs":"yarn",".pnp.js":"yarn","bun.lock":"bun","bun.lockb":"bun"},Zi={bun:"https://bun.sh",deno:"https://deno.com",pnpm:"https://pnpm.io/installation","pnpm@6":"https://pnpm.io/6.x/installation",yarn:"https://classic.yarnpkg.com/en/docs/install","yarn@berry":"https://yarnpkg.com/getting-started/install",npm:"https://docs.npmjs.com/cli/configuring-npm/install"};async function mr(e,t){try{let r=await Qi__default.stat(e);return t==="file"?r.isFile():r.isDirectory()}catch{return false}}function*fl(e=Z.cwd()){let t=R__default.resolve(e),{root:r}=R__default.parse(t);for(;t&&t!==r;)yield t,t=R__default.dirname(t);}async function Xi(e,t){return !e||!mr(e,"file")?null:await pl(e,t)}async function gr(e={}){let{cwd:t,strategies:r=["lockfile","packageManager-field","devEngines-field"],onUnknown:s}=e,i;if(typeof e.stopDir=="string"){let n=R__default.resolve(e.stopDir);i=o=>o===n;}else i=e.stopDir;for(let n of fl(t)){for(let o of r)switch(o){case "lockfile":{for(let c of Object.keys(dr))if(await mr(R__default.join(n,c),"file")){let a=dr[c],h=await Xi(R__default.join(n,"package.json"),s);return h||{name:a,agent:a}}break}case "packageManager-field":case "devEngines-field":{let c=await Xi(R__default.join(n,"package.json"),s);if(c)return c;break}case "install-metadata":{for(let c of Object.keys(pr)){let a=c.endsWith("/")?"dir":"file";if(await mr(R__default.join(n,c),a)){let h=pr[c],l=h==="yarn"?ml(c)?"yarn":"yarn@berry":h;return {name:h,agent:l}}}break}}if(i?.(n))break}return null}function dl(e){let t=r=>r?.match(/\d+(\.\d+){0,2}/)?.[0]??r;if(typeof e.packageManager=="string"){let[r,s]=e.packageManager.replace(/^\^/,"").split("@");return {name:r,ver:t(s)}}if(typeof e.devEngines?.packageManager?.name=="string")return {name:e.devEngines.packageManager.name,ver:t(e.devEngines.packageManager.version)}}async function pl(e,t){try{let r=JSON.parse(await Qi__default.readFile(e,"utf8")),s,i=dl(r);if(i){let n=i.name,o=i.ver,c=o;return n==="yarn"&&o&&Number.parseInt(o)>1?(s="yarn@berry",c="berry",{name:n,agent:s,version:c}):n==="pnpm"&&o&&Number.parseInt(o)<7?(s="pnpm@6",{name:n,agent:s,version:c}):fr.includes(n)?(s=n,{name:n,agent:s,version:c}):t?.(r.packageManager)??null}}catch{}return null}function ml(e){return e.endsWith(".yarn_integrity")}var Le=createRequire(import.meta.url),yl=Object.create,sn=Object.defineProperty,wl=Object.getOwnPropertyDescriptor,xl=Object.getOwnPropertyNames,vl=Object.getPrototypeOf,bl=Object.prototype.hasOwnProperty,ye=(e=>typeof Le<"u"?Le:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof Le<"u"?Le:t)[r]}):e)(function(e){if(typeof Le<"u")return Le.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')}),G=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Rl=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of xl(t))!bl.call(e,i)&&i!==r&&sn(e,i,{get:()=>t[i],enumerable:!(s=wl(t,i))||s.enumerable});return e},El=(e,t,r)=>(r=e!=null?yl(vl(e)):{},Rl(sn(r,"default",{value:e,enumerable:true}),e)),Il=G((e,t)=>{t.exports=n,n.sync=o;var r=ye("fs");function s(c,a){var h=a.pathExt!==void 0?a.pathExt:process.env.PATHEXT;if(!h||(h=h.split(";"),h.indexOf("")!==-1))return true;for(var l=0;l<h.length;l++){var u=h[l].toLowerCase();if(u&&c.substr(-u.length).toLowerCase()===u)return true}return false}function i(c,a,h){return !c.isSymbolicLink()&&!c.isFile()?false:s(a,h)}function n(c,a,h){r.stat(c,function(l,u){h(l,l?false:i(u,c,a));});}function o(c,a){return i(r.statSync(c),c,a)}}),Sl=G((e,t)=>{t.exports=s,s.sync=i;var r=ye("fs");function s(c,a,h){r.stat(c,function(l,u){h(l,l?false:n(u,a));});}function i(c,a){return n(r.statSync(c),a)}function n(c,a){return c.isFile()&&o(c,a)}function o(c,a){var h=c.mode,l=c.uid,u=c.gid,d=a.uid!==void 0?a.uid:process.getuid&&process.getuid(),f=a.gid!==void 0?a.gid:process.getgid&&process.getgid(),p=parseInt("100",8),y=parseInt("010",8),m=parseInt("001",8),x=p|y,g=h&m||h&y&&u===f||h&p&&l===d||h&x&&d===0;return g}}),Cl=G((e,t)=>{ye("fs");var s;process.platform==="win32"||global.TESTING_WINDOWS?s=Il():s=Sl(),t.exports=i,i.sync=n;function i(o,c,a){if(typeof c=="function"&&(a=c,c={}),!a){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(h,l){i(o,c||{},function(u,d){u?l(u):h(d);});})}s(o,c||{},function(h,l){h&&(h.code==="EACCES"||c&&c.ignoreErrors)&&(h=null,l=false),a(h,l);});}function n(o,c){try{return s.sync(o,c||{})}catch(a){if(c&&c.ignoreErrors||a.code==="EACCES")return false;throw a}}}),$l=G((e,t)=>{var r=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",s=ye("path"),i=r?";":":",n=Cl(),o=l=>Object.assign(new Error(`not found: ${l}`),{code:"ENOENT"}),c=(l,u)=>{let d=u.colon||i,f=l.match(/\//)||r&&l.match(/\\/)?[""]:[...r?[process.cwd()]:[],...(u.path||process.env.PATH||"").split(d)],p=r?u.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",y=r?p.split(d):[""];return r&&l.indexOf(".")!==-1&&y[0]!==""&&y.unshift(""),{pathEnv:f,pathExt:y,pathExtExe:p}},a=(l,u,d)=>{typeof u=="function"&&(d=u,u={}),u||(u={});let{pathEnv:f,pathExt:p,pathExtExe:y}=c(l,u),m=[],x=w=>new Promise((v,b)=>{if(w===f.length)return u.all&&m.length?v(m):b(o(l));let E=f[w],P=/^".*"$/.test(E)?E.slice(1,-1):E,k=s.join(P,l),$=!P&&/^\.[\\\/]/.test(l)?l.slice(0,2)+k:k;v(g($,w,0));}),g=(w,v,b)=>new Promise((E,P)=>{if(b===p.length)return E(x(v+1));let k=p[b];n(w+k,{pathExt:y},($,Q)=>{if(!$&&Q)if(u.all)m.push(w+k);else return E(w+k);return E(g(w,v,b+1))});});return d?x(0).then(w=>d(null,w),d):x(0)},h=(l,u)=>{u=u||{};let{pathEnv:d,pathExt:f,pathExtExe:p}=c(l,u),y=[];for(let m=0;m<d.length;m++){let x=d[m],g=/^".*"$/.test(x)?x.slice(1,-1):x,w=s.join(g,l),v=!g&&/^\.[\\\/]/.test(l)?l.slice(0,2)+w:w;for(let b=0;b<f.length;b++){let E=v+f[b];try{if(n.sync(E,{pathExt:p}))if(u.all)y.push(E);else return E}catch{}}}if(u.all&&y.length)return y;if(u.nothrow)return null;throw o(l)};t.exports=a,a.sync=h;}),kl=G((e,t)=>{var r=(s={})=>{let i=s.env||process.env;return (s.platform||process.platform)!=="win32"?"PATH":Object.keys(i).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};t.exports=r,t.exports.default=r;}),Tl=G((e,t)=>{var r=ye("path"),s=$l(),i=kl();function n(c,a){let h=c.options.env||process.env,l=process.cwd(),u=c.options.cwd!=null,d=u&&process.chdir!==void 0&&!process.chdir.disabled;if(d)try{process.chdir(c.options.cwd);}catch{}let f;try{f=s.sync(c.command,{path:h[i({env:h})],pathExt:a?r.delimiter:void 0});}catch{}finally{d&&process.chdir(l);}return f&&(f=r.resolve(u?c.options.cwd:"",f)),f}function o(c){return n(c)||n(c,true)}t.exports=o;}),Pl=G((e,t)=>{var r=/([()\][%!^"`<>&|;, *?])/g;function s(n){return n=n.replace(r,"^$1"),n}function i(n,o){return n=`${n}`,n=n.replace(/(\\*)"/g,'$1$1\\"'),n=n.replace(/(\\*)$/,"$1$1"),n=`"${n}"`,n=n.replace(r,"^$1"),o&&(n=n.replace(r,"^$1")),n}t.exports.command=s,t.exports.argument=i;}),Al=G((e,t)=>{t.exports=/^#!(.*)/;}),Ol=G((e,t)=>{var r=Al();t.exports=(s="")=>{let i=s.match(r);if(!i)return null;let[n,o]=i[0].replace(/#! ?/,"").split(" "),c=n.split("/").pop();return c==="env"?o:o?`${c} ${o}`:c};}),jl=G((e,t)=>{var r=ye("fs"),s=Ol();function i(n){let o=Buffer.alloc(150),c;try{c=r.openSync(n,"r"),r.readSync(c,o,0,150,0),r.closeSync(c);}catch{}return s(o.toString())}t.exports=i;}),_l=G((e,t)=>{var r=ye("path"),s=Tl(),i=Pl(),n=jl(),o=process.platform==="win32",c=/\.(?:com|exe)$/i,a=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function h(d){d.file=s(d);let f=d.file&&n(d.file);return f?(d.args.unshift(d.file),d.command=f,s(d)):d.file}function l(d){if(!o)return d;let f=h(d),p=!c.test(f);if(d.options.forceShell||p){let y=a.test(f);d.command=r.normalize(d.command),d.command=i.command(d.command),d.args=d.args.map(x=>i.argument(x,y));let m=[d.command].concat(d.args).join(" ");d.args=["/d","/s","/c",`"${m}"`],d.command=process.env.comspec||"cmd.exe",d.options.windowsVerbatimArguments=true;}return d}function u(d,f,p){f&&!Array.isArray(f)&&(p=f,f=null),f=f?f.slice(0):[],p=Object.assign({},p);let y={command:d,args:f,options:p,file:void 0,original:{command:d,args:f}};return p.shell?y:l(y)}t.exports=u;}),Nl=G((e,t)=>{var r=process.platform==="win32";function s(c,a){return Object.assign(new Error(`${a} ${c.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${a} ${c.command}`,path:c.command,spawnargs:c.args})}function i(c,a){if(!r)return;let h=c.emit;c.emit=function(l,u){if(l==="exit"){let d=n(u,a);if(d)return h.call(c,"error",d)}return h.apply(c,arguments)};}function n(c,a){return r&&c===1&&!a.file?s(a.original,"spawn"):null}function o(c,a){return r&&c===1&&!a.file?s(a.original,"spawnSync"):null}t.exports={hookChildProcess:i,verifyENOENT:n,verifyENOENTSync:o,notFoundError:s};}),Ml=G((e,t)=>{var r=ye("child_process"),s=_l(),i=Nl();function n(c,a,h){let l=s(c,a,h),u=r.spawn(l.command,l.args,l.options);return i.hookChildProcess(u,l),u}function o(c,a,h){let l=s(c,a,h),u=r.spawnSync(l.command,l.args,l.options);return u.error=u.error||i.verifyENOENTSync(u.status,l),u}t.exports=n,t.exports.spawn=n,t.exports.sync=o,t.exports._parse=s,t.exports._enoent=i;}),zl=/^path$/i,tn={key:"PATH",value:""};function Vl(e){for(let t in e){if(!Object.prototype.hasOwnProperty.call(e,t)||!zl.test(t))continue;let r=e[t];return r?{key:t,value:r}:tn}return tn}function Gl(e,t){let r=t.value.split(delimiter),s=e,i;do r.push(resolve(s,"node_modules",".bin")),i=s,s=dirname(s);while(s!==i);return {key:t.key,value:r.join(delimiter)}}function Ul(e,t){let r={...process.env,...t},s=Gl(e,Vl(r));return r[s.key]=s.value,r}var ql=e=>{let t=e.length,r=new PassThrough,s=()=>{--t===0&&r.emit("end");};for(let i of e)i.pipe(r,{end:false}),i.on("end",s);return r},Bl=El(Ml()),rn=class extends Error{result;output;get exitCode(){if(this.result.exitCode!==null)return this.result.exitCode}constructor(e,t){super(`Process exited with non-zero status (${e.exitCode})`),this.result=e,this.output=t;}},Yl={timeout:void 0,persist:false},Zl={windowsHide:true};function Xl(e,t){return {command:normalize(e),args:t??[]}}function Ql(e){let t=new AbortController;for(let r of e){if(r.aborted)return t.abort(),r;let s=()=>{t.abort(r.reason);};r.addEventListener("abort",s,{signal:t.signal});}return t.signal}var eu=class{_process;_aborted=false;_options;_command;_args;_resolveClose;_processClosed;_thrownError;get process(){return this._process}get pid(){return this._process?.pid}get exitCode(){if(this._process&&this._process.exitCode!==null)return this._process.exitCode}constructor(e,t,r){this._options={...Yl,...r},this._command=e,this._args=t??[],this._processClosed=new Promise(s=>{this._resolveClose=s;});}kill(e){return this._process?.kill(e)===true}get aborted(){return this._aborted}get killed(){return this._process?.killed===true}pipe(e,t,r){return tu(e,t,{...r,stdin:this})}async*[Symbol.asyncIterator](){let e=this._process;if(!e)return;let t=[];this._streamErr&&t.push(this._streamErr),this._streamOut&&t.push(this._streamOut);let r=ql(t),s=Jl.createInterface({input:r});for await(let i of s)yield i.toString();if(await this._processClosed,e.removeAllListeners(),this._thrownError)throw this._thrownError;if(this._options?.throwOnError&&this.exitCode!==0&&this.exitCode!==void 0)throw new rn(this)}async _waitForOutput(){let e=this._process;if(!e)throw new Error("No process was started");let t="",r="";if(this._streamOut)for await(let i of this._streamOut)r+=i.toString();if(this._streamErr)for await(let i of this._streamErr)t+=i.toString();if(await this._processClosed,this._options?.stdin&&await this._options.stdin,e.removeAllListeners(),this._thrownError)throw this._thrownError;let s={stderr:t,stdout:r,exitCode:this.exitCode};if(this._options.throwOnError&&this.exitCode!==0&&this.exitCode!==void 0)throw new rn(this,s);return s}then(e,t){return this._waitForOutput().then(e,t)}_streamOut;_streamErr;spawn(){let e=cwd(),t=this._options,r={...Zl,...t.nodeOptions},s=[];this._resetState(),t.timeout!==void 0&&s.push(AbortSignal.timeout(t.timeout)),t.signal!==void 0&&s.push(t.signal),t.persist===true&&(r.detached=true),s.length>0&&(r.signal=Ql(s)),r.env=Ul(e,r.env);let{command:i,args:n}=Xl(this._command,this._args),o=(0, Bl._parse)(i,n,r),c=spawn(o.command,o.args,o.options);if(c.stderr&&(this._streamErr=c.stderr),c.stdout&&(this._streamOut=c.stdout),this._process=c,c.once("error",this._onError),c.once("close",this._onClose),t.stdin!==void 0&&c.stdin&&t.stdin.process){let{stdout:a}=t.stdin.process;a&&a.pipe(c.stdin);}}_resetState(){this._aborted=false,this._processClosed=new Promise(e=>{this._resolveClose=e;}),this._thrownError=void 0;}_onError=e=>{if(e.name==="AbortError"&&(!(e.cause instanceof Error)||e.cause.name!=="TimeoutError")){this._aborted=true;return}this._thrownError=e;};_onClose=()=>{this._resolveClose&&this._resolveClose();}},yr=(e,t,r)=>{let s=new eu(e,t,r);return s.spawn(),s},tu=yr;function ns(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var xr={},vr,on;function B(){if(on)return vr;on=1;let e,t,r,s,i=true;typeof process<"u"&&({FORCE_COLOR:e,NODE_DISABLE_COLORS:t,NO_COLOR:r,TERM:s}=process.env||{},i=process.stdout&&process.stdout.isTTY);let n={enabled:!t&&r==null&&s!=="dumb"&&(e!=null&&e!=="0"||i),reset:a(0,0),bold:a(1,22),dim:a(2,22),italic:a(3,23),underline:a(4,24),inverse:a(7,27),hidden:a(8,28),strikethrough:a(9,29),black:a(30,39),red:a(31,39),green:a(32,39),yellow:a(33,39),blue:a(34,39),magenta:a(35,39),cyan:a(36,39),white:a(37,39),gray:a(90,39),grey:a(90,39),bgBlack:a(40,49),bgRed:a(41,49),bgGreen:a(42,49),bgYellow:a(43,49),bgBlue:a(44,49),bgMagenta:a(45,49),bgCyan:a(46,49),bgWhite:a(47,49)};function o(h,l){let u=0,d,f="",p="";for(;u<h.length;u++)d=h[u],f+=d.open,p+=d.close,~l.indexOf(d.close)&&(l=l.replace(d.rgx,d.close+d.open));return f+l+p}function c(h,l){let u={has:h,keys:l};return u.reset=n.reset.bind(u),u.bold=n.bold.bind(u),u.dim=n.dim.bind(u),u.italic=n.italic.bind(u),u.underline=n.underline.bind(u),u.inverse=n.inverse.bind(u),u.hidden=n.hidden.bind(u),u.strikethrough=n.strikethrough.bind(u),u.black=n.black.bind(u),u.red=n.red.bind(u),u.green=n.green.bind(u),u.yellow=n.yellow.bind(u),u.blue=n.blue.bind(u),u.magenta=n.magenta.bind(u),u.cyan=n.cyan.bind(u),u.white=n.white.bind(u),u.gray=n.gray.bind(u),u.grey=n.grey.bind(u),u.bgBlack=n.bgBlack.bind(u),u.bgRed=n.bgRed.bind(u),u.bgGreen=n.bgGreen.bind(u),u.bgYellow=n.bgYellow.bind(u),u.bgBlue=n.bgBlue.bind(u),u.bgMagenta=n.bgMagenta.bind(u),u.bgCyan=n.bgCyan.bind(u),u.bgWhite=n.bgWhite.bind(u),u}function a(h,l){let u={open:`\x1B[${h}m`,close:`\x1B[${l}m`,rgx:new RegExp(`\\x1b\\[${l}m`,"g")};return function(d){return this!==void 0&&this.has!==void 0?(~this.has.indexOf(h)||(this.has.push(h),this.keys.push(u)),d===void 0?this:n.enabled?o(this.keys,d+""):d+""):d===void 0?c([h],[u]):n.enabled?o([u],d+""):d+""}}return vr=n,vr}var br,an;function hu(){return an||(an=1,br=(e,t)=>{if(!(e.meta&&e.name!=="escape")){if(e.ctrl)return e.name==="a"?"first":e.name==="c"||e.name==="d"?"abort":e.name==="e"?"last":e.name==="g"?"reset":e.name==="n"?"down":e.name==="p"?"up":void 0;if(t){if(e.name==="j")return "down";if(e.name==="k")return "up"}return e.name==="return"||e.name==="enter"?"submit":e.name==="backspace"?"delete":e.name==="delete"?"deleteForward":e.name==="abort"?"abort":e.name==="escape"?"exit":e.name==="tab"?"next":e.name==="pagedown"?"nextPage":e.name==="pageup"?"prevPage":e.name==="home"?"home":e.name==="end"?"end":e.name==="up"?"up":e.name==="down"?"down":e.name==="right"?"right":e.name==="left"?"left":false}}),br}var Rr,cn;function os(){return cn||(cn=1,Rr=e=>{let t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))"].join("|"),r=new RegExp(t,"g");return typeof e=="string"?e.replace(r,""):e}),Rr}var Er,ln;function J(){if(ln)return Er;ln=1;let e="\x1B",t=`${e}[`,r="\x07",s={to(o,c){return c?`${t}${c+1};${o+1}H`:`${t}${o+1}G`},move(o,c){let a="";return o<0?a+=`${t}${-o}D`:o>0&&(a+=`${t}${o}C`),c<0?a+=`${t}${-c}A`:c>0&&(a+=`${t}${c}B`),a},up:(o=1)=>`${t}${o}A`,down:(o=1)=>`${t}${o}B`,forward:(o=1)=>`${t}${o}C`,backward:(o=1)=>`${t}${o}D`,nextLine:(o=1)=>`${t}E`.repeat(o),prevLine:(o=1)=>`${t}F`.repeat(o),left:`${t}G`,hide:`${t}?25l`,show:`${t}?25h`,save:`${e}7`,restore:`${e}8`},i={up:(o=1)=>`${t}S`.repeat(o),down:(o=1)=>`${t}T`.repeat(o)},n={screen:`${t}2J`,up:(o=1)=>`${t}1J`.repeat(o),down:(o=1)=>`${t}J`.repeat(o),line:`${t}2K`,lineEnd:`${t}K`,lineStart:`${t}1K`,lines(o){let c="";for(let a=0;a<o;a++)c+=this.line+(a<o-1?s.up():"");return o&&(c+=s.left),c}};return Er={cursor:s,scroll:i,erase:n,beep:r},Er}var Ir,un;function fu(){if(un)return Ir;un=1;let e=os(),{erase:t,cursor:r}=J(),s=i=>[...e(i)].length;return Ir=function(i,n){if(!n)return t.line+r.to(0);let o=0,c=i.split(/\r?\n/);for(let a of c)o+=1+Math.floor(Math.max(s(a)-1,0)/n);return t.lines(o)},Ir}var Sr,hn;function Qn(){if(hn)return Sr;hn=1;let e={arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",radioOn:"\u25C9",radioOff:"\u25EF",tick:"\u2714",cross:"\u2716",ellipsis:"\u2026",pointerSmall:"\u203A",line:"\u2500",pointer:"\u276F"},t={arrowUp:e.arrowUp,arrowDown:e.arrowDown,arrowLeft:e.arrowLeft,arrowRight:e.arrowRight,radioOn:"(*)",radioOff:"( )",tick:"\u221A",cross:"\xD7",ellipsis:"...",pointerSmall:"\xBB",line:"\u2500",pointer:">"};return Sr=process.platform==="win32"?t:e,Sr}var Cr,fn;function du(){if(fn)return Cr;fn=1;let e=B(),t=Qn(),r=Object.freeze({password:{scale:1,render:a=>"*".repeat(a.length)},emoji:{scale:2,render:a=>"\u{1F603}".repeat(a.length)},invisible:{scale:0,render:a=>""},default:{scale:1,render:a=>`${a}`}}),s=a=>r[a]||r.default,i=Object.freeze({aborted:e.red(t.cross),done:e.green(t.tick),exited:e.yellow(t.cross),default:e.cyan("?")});return Cr={styles:r,render:s,symbols:i,symbol:(a,h,l)=>h?i.aborted:l?i.exited:a?i.done:i.default,delimiter:a=>e.gray(a?t.ellipsis:t.pointerSmall),item:(a,h)=>e.gray(a?h?t.pointerSmall:"+":t.line)},Cr}var $r,dn;function pu(){if(dn)return $r;dn=1;let e=os();return $r=function(t,r){let s=String(e(t)||"").split(/\r?\n/);return r?s.map(i=>Math.ceil(i.length/r)).reduce((i,n)=>i+n):s.length},$r}var kr,pn;function mu(){return pn||(pn=1,kr=(e,t={})=>{let r=Number.isSafeInteger(parseInt(t.margin))?new Array(parseInt(t.margin)).fill(" ").join(""):t.margin||"",s=t.width;return (e||"").split(/\r?\n/g).map(i=>i.split(/\s+/g).reduce((n,o)=>(o.length+r.length>=s||n[n.length-1].length+o.length+1<s?n[n.length-1]+=` ${o}`:n.push(`${r}${o}`),n),[r]).join(`
|
|
47
47
|
`)).join(`
|
|
48
|
-
`)})
|
|
48
|
+
`)}),kr}var Tr,mn;function gu(){return mn||(mn=1,Tr=(e,t,r)=>{r=r||t;let s=Math.min(t-r,e-Math.floor(r/2));s<0&&(s=0);let i=Math.min(s+r,t);return {startIndex:s,endIndex:i}}),Tr}var Pr,gn;function X(){return gn||(gn=1,Pr={action:hu(),clear:fu(),style:du(),strip:os(),figures:Qn(),lines:pu(),wrap:mu(),entriesToDisplay:gu()}),Pr}var Ar,yn;function we(){if(yn)return Ar;yn=1;let e=Jl,{action:t}=X(),r=nu,{beep:s,cursor:i}=J(),n=B();class o extends r{constructor(a={}){super(),this.firstRender=true,this.in=a.stdin||process.stdin,this.out=a.stdout||process.stdout,this.onRender=(a.onRender||(()=>{})).bind(this);let h=e.createInterface({input:this.in,escapeCodeTimeout:50});e.emitKeypressEvents(this.in,h),this.in.isTTY&&this.in.setRawMode(true);let l=["SelectPrompt","MultiselectPrompt"].indexOf(this.constructor.name)>-1,u=(d,f)=>{let p=t(f,l);p===false?this._&&this._(d,f):typeof this[p]=="function"?this[p](f):this.bell();};this.close=()=>{this.out.write(i.show),this.in.removeListener("keypress",u),this.in.isTTY&&this.in.setRawMode(false),h.close(),this.emit(this.aborted?"abort":this.exited?"exit":"submit",this.value),this.closed=true;},this.in.on("keypress",u);}fire(){this.emit("state",{value:this.value,aborted:!!this.aborted,exited:!!this.exited});}bell(){this.out.write(s);}render(){this.onRender(n),this.firstRender&&(this.firstRender=false);}}return Ar=o,Ar}var Or,wn;function yu(){if(wn)return Or;wn=1;let e=B(),t=we(),{erase:r,cursor:s}=J(),{style:i,clear:n,lines:o,figures:c}=X();class a extends t{constructor(l={}){super(l),this.transform=i.render(l.style),this.scale=this.transform.scale,this.msg=l.message,this.initial=l.initial||"",this.validator=l.validate||(()=>true),this.value="",this.errorMsg=l.error||"Please Enter A Valid Value",this.cursor=+!!this.initial,this.cursorOffset=0,this.clear=n("",this.out.columns),this.render();}set value(l){!l&&this.initial?(this.placeholder=true,this.rendered=e.gray(this.transform.render(this.initial))):(this.placeholder=false,this.rendered=this.transform.render(l)),this._value=l,this.fire();}get value(){return this._value}reset(){this.value="",this.cursor=+!!this.initial,this.cursorOffset=0,this.fire(),this.render();}exit(){this.abort();}abort(){this.value=this.value||this.initial,this.done=this.aborted=true,this.error=false,this.red=false,this.fire(),this.render(),this.out.write(`
|
|
49
49
|
`),this.close();}async validate(){let l=await this.validator(this.value);typeof l=="string"&&(this.errorMsg=l,l=false),this.error=!l;}async submit(){if(this.value=this.value||this.initial,this.cursorOffset=0,this.cursor=this.rendered.length,await this.validate(),this.error){this.red=true,this.fire(),this.render();return}this.done=true,this.aborted=false,this.fire(),this.render(),this.out.write(`
|
|
50
50
|
`),this.close();}next(){if(!this.placeholder)return this.bell();this.value=this.initial,this.cursor=this.rendered.length,this.fire(),this.render();}moveCursor(l){this.placeholder||(this.cursor=this.cursor+l,this.cursorOffset+=l);}_(l,u){let d=this.value.slice(0,this.cursor),f=this.value.slice(this.cursor);this.value=`${d}${l}${f}`,this.red=false,this.cursor=this.placeholder?0:d.length+1,this.render();}delete(){if(this.isCursorAtStart())return this.bell();let l=this.value.slice(0,this.cursor-1),u=this.value.slice(this.cursor);this.value=`${l}${u}`,this.red=false,this.isCursorAtStart()?this.cursorOffset=0:(this.cursorOffset++,this.moveCursor(-1)),this.render();}deleteForward(){if(this.cursor*this.scale>=this.rendered.length||this.placeholder)return this.bell();let l=this.value.slice(0,this.cursor),u=this.value.slice(this.cursor+1);this.value=`${l}${u}`,this.red=false,this.isCursorAtEnd()?this.cursorOffset=0:this.cursorOffset++,this.render();}first(){this.cursor=0,this.render();}last(){this.cursor=this.value.length,this.render();}left(){if(this.cursor<=0||this.placeholder)return this.bell();this.moveCursor(-1),this.render();}right(){if(this.cursor*this.scale>=this.rendered.length||this.placeholder)return this.bell();this.moveCursor(1),this.render();}isCursorAtStart(){return this.cursor===0||this.placeholder&&this.cursor===1}isCursorAtEnd(){return this.cursor===this.rendered.length||this.placeholder&&this.cursor===this.rendered.length+1}render(){this.closed||(this.firstRender||(this.outputError&&this.out.write(s.down(o(this.outputError,this.out.columns)-1)+n(this.outputError,this.out.columns)),this.out.write(n(this.outputText,this.out.columns))),super.render(),this.outputError="",this.outputText=[i.symbol(this.done,this.aborted),e.bold(this.msg),i.delimiter(this.done),this.red?e.red(this.rendered):this.rendered].join(" "),this.error&&(this.outputError+=this.errorMsg.split(`
|
|
51
51
|
`).reduce((l,u,d)=>l+`
|
|
52
|
-
${d?" ":c.pointerSmall} ${e.red().italic(u)}`,"")),this.out.write(r.line+s.to(0)+this.outputText+s.save+this.outputError+s.restore+s.move(this.cursorOffset,0)));}}return
|
|
52
|
+
${d?" ":c.pointerSmall} ${e.red().italic(u)}`,"")),this.out.write(r.line+s.to(0)+this.outputText+s.save+this.outputError+s.restore+s.move(this.cursorOffset,0)));}}return Or=a,Or}var jr,xn;function wu(){if(xn)return jr;xn=1;let e=B(),t=we(),{style:r,clear:s,figures:i,wrap:n,entriesToDisplay:o}=X(),{cursor:c}=J();class a extends t{constructor(l={}){super(l),this.msg=l.message,this.hint=l.hint||"- Use arrow-keys. Return to submit.",this.warn=l.warn||"- This option is disabled",this.cursor=l.initial||0,this.choices=l.choices.map((u,d)=>(typeof u=="string"&&(u={title:u,value:d}),{title:u&&(u.title||u.value||u),value:u&&(u.value===void 0?d:u.value),description:u&&u.description,selected:u&&u.selected,disabled:u&&u.disabled})),this.optionsPerPage=l.optionsPerPage||10,this.value=(this.choices[this.cursor]||{}).value,this.clear=s("",this.out.columns),this.render();}moveCursor(l){this.cursor=l,this.value=this.choices[l].value,this.fire();}reset(){this.moveCursor(0),this.fire(),this.render();}exit(){this.abort();}abort(){this.done=this.aborted=true,this.fire(),this.render(),this.out.write(`
|
|
53
53
|
`),this.close();}submit(){this.selection.disabled?this.bell():(this.done=true,this.aborted=false,this.fire(),this.render(),this.out.write(`
|
|
54
54
|
`),this.close());}first(){this.moveCursor(0),this.render();}last(){this.moveCursor(this.choices.length-1),this.render();}up(){this.cursor===0?this.moveCursor(this.choices.length-1):this.moveCursor(this.cursor-1),this.render();}down(){this.cursor===this.choices.length-1?this.moveCursor(0):this.moveCursor(this.cursor+1),this.render();}next(){this.moveCursor((this.cursor+1)%this.choices.length),this.render();}_(l,u){if(l===" ")return this.submit()}get selection(){return this.choices[this.cursor]}render(){if(this.closed)return;this.firstRender?this.out.write(c.hide):this.out.write(s(this.outputText,this.out.columns)),super.render();let{startIndex:l,endIndex:u}=o(this.cursor,this.choices.length,this.optionsPerPage);if(this.outputText=[r.symbol(this.done,this.aborted),e.bold(this.msg),r.delimiter(false),this.done?this.selection.title:this.selection.disabled?e.yellow(this.warn):e.gray(this.hint)].join(" "),!this.done){this.outputText+=`
|
|
55
55
|
`;for(let d=l;d<u;d++){let f,p,y="",m=this.choices[d];d===l&&l>0?p=i.arrowUp:d===u-1&&u<this.choices.length?p=i.arrowDown:p=" ",m.disabled?(f=this.cursor===d?e.gray().underline(m.title):e.strikethrough().gray(m.title),p=(this.cursor===d?e.bold().gray(i.pointer)+" ":" ")+p):(f=this.cursor===d?e.cyan().underline(m.title):m.title,p=(this.cursor===d?e.cyan(i.pointer)+" ":" ")+p,m.description&&this.cursor===d&&(y=` - ${m.description}`,(p.length+f.length+y.length>=this.out.columns||m.description.split(/\r?\n/).length>1)&&(y=`
|
|
56
56
|
`+n(m.description,{margin:3,width:this.out.columns})))),this.outputText+=`${p} ${f}${e.gray(y)}
|
|
57
|
-
`;}}this.out.write(this.outputText);}}return
|
|
57
|
+
`;}}this.out.write(this.outputText);}}return jr=a,jr}var _r,vn;function xu(){if(vn)return _r;vn=1;let e=B(),t=we(),{style:r,clear:s}=X(),{cursor:i,erase:n}=J();class o extends t{constructor(a={}){super(a),this.msg=a.message,this.value=!!a.initial,this.active=a.active||"on",this.inactive=a.inactive||"off",this.initialValue=this.value,this.render();}reset(){this.value=this.initialValue,this.fire(),this.render();}exit(){this.abort();}abort(){this.done=this.aborted=true,this.fire(),this.render(),this.out.write(`
|
|
58
58
|
`),this.close();}submit(){this.done=true,this.aborted=false,this.fire(),this.render(),this.out.write(`
|
|
59
|
-
`),this.close();}deactivate(){if(this.value===false)return this.bell();this.value=false,this.render();}activate(){if(this.value===true)return this.bell();this.value=true,this.render();}delete(){this.deactivate();}left(){this.deactivate();}right(){this.activate();}down(){this.deactivate();}up(){this.activate();}next(){this.value=!this.value,this.fire(),this.render();}_(a,h){if(a===" ")this.value=!this.value;else if(a==="1")this.value=true;else if(a==="0")this.value=false;else return this.bell();this.render();}render(){this.closed||(this.firstRender?this.out.write(i.hide):this.out.write(s(this.outputText,this.out.columns)),super.render(),this.outputText=[r.symbol(this.done,this.aborted),e.bold(this.msg),r.delimiter(this.done),this.value?this.inactive:e.cyan().underline(this.inactive),e.gray("/"),this.value?e.cyan().underline(this.active):this.active].join(" "),this.out.write(n.line+i.to(0)+this.outputText));}}return
|
|
59
|
+
`),this.close();}deactivate(){if(this.value===false)return this.bell();this.value=false,this.render();}activate(){if(this.value===true)return this.bell();this.value=true,this.render();}delete(){this.deactivate();}left(){this.deactivate();}right(){this.activate();}down(){this.deactivate();}up(){this.activate();}next(){this.value=!this.value,this.fire(),this.render();}_(a,h){if(a===" ")this.value=!this.value;else if(a==="1")this.value=true;else if(a==="0")this.value=false;else return this.bell();this.render();}render(){this.closed||(this.firstRender?this.out.write(i.hide):this.out.write(s(this.outputText,this.out.columns)),super.render(),this.outputText=[r.symbol(this.done,this.aborted),e.bold(this.msg),r.delimiter(this.done),this.value?this.inactive:e.cyan().underline(this.inactive),e.gray("/"),this.value?e.cyan().underline(this.active):this.active].join(" "),this.out.write(n.line+i.to(0)+this.outputText));}}return _r=o,_r}var Nr,bn;function oe(){if(bn)return Nr;bn=1;class e{constructor({token:r,date:s,parts:i,locales:n}){this.token=r,this.date=s||new Date,this.parts=i||[this],this.locales=n||{};}up(){}down(){}next(){let r=this.parts.indexOf(this);return this.parts.find((s,i)=>i>r&&s instanceof e)}setTo(r){}prev(){let r=[].concat(this.parts).reverse(),s=r.indexOf(this);return r.find((i,n)=>n>s&&i instanceof e)}toString(){return String(this.date)}}return Nr=e,Nr}var Mr,Rn;function vu(){if(Rn)return Mr;Rn=1;let e=oe();class t extends e{constructor(s={}){super(s);}up(){this.date.setHours((this.date.getHours()+12)%24);}down(){this.up();}toString(){let s=this.date.getHours()>12?"pm":"am";return /\A/.test(this.token)?s.toUpperCase():s}}return Mr=t,Mr}var Lr,En;function bu(){if(En)return Lr;En=1;let e=oe(),t=s=>(s=s%10,s===1?"st":s===2?"nd":s===3?"rd":"th");class r extends e{constructor(i={}){super(i);}up(){this.date.setDate(this.date.getDate()+1);}down(){this.date.setDate(this.date.getDate()-1);}setTo(i){this.date.setDate(parseInt(i.substr(-2)));}toString(){let i=this.date.getDate(),n=this.date.getDay();return this.token==="DD"?String(i).padStart(2,"0"):this.token==="Do"?i+t(i):this.token==="d"?n+1:this.token==="ddd"?this.locales.weekdaysShort[n]:this.token==="dddd"?this.locales.weekdays[n]:i}}return Lr=r,Lr}var Fr,In;function Ru(){if(In)return Fr;In=1;let e=oe();class t extends e{constructor(s={}){super(s);}up(){this.date.setHours(this.date.getHours()+1);}down(){this.date.setHours(this.date.getHours()-1);}setTo(s){this.date.setHours(parseInt(s.substr(-2)));}toString(){let s=this.date.getHours();return /h/.test(this.token)&&(s=s%12||12),this.token.length>1?String(s).padStart(2,"0"):s}}return Fr=t,Fr}var Dr,Sn;function Eu(){if(Sn)return Dr;Sn=1;let e=oe();class t extends e{constructor(s={}){super(s);}up(){this.date.setMilliseconds(this.date.getMilliseconds()+1);}down(){this.date.setMilliseconds(this.date.getMilliseconds()-1);}setTo(s){this.date.setMilliseconds(parseInt(s.substr(-this.token.length)));}toString(){return String(this.date.getMilliseconds()).padStart(4,"0").substr(0,this.token.length)}}return Dr=t,Dr}var Wr,Cn;function Iu(){if(Cn)return Wr;Cn=1;let e=oe();class t extends e{constructor(s={}){super(s);}up(){this.date.setMinutes(this.date.getMinutes()+1);}down(){this.date.setMinutes(this.date.getMinutes()-1);}setTo(s){this.date.setMinutes(parseInt(s.substr(-2)));}toString(){let s=this.date.getMinutes();return this.token.length>1?String(s).padStart(2,"0"):s}}return Wr=t,Wr}var Hr,$n;function Su(){if($n)return Hr;$n=1;let e=oe();class t extends e{constructor(s={}){super(s);}up(){this.date.setMonth(this.date.getMonth()+1);}down(){this.date.setMonth(this.date.getMonth()-1);}setTo(s){s=parseInt(s.substr(-2))-1,this.date.setMonth(s<0?0:s);}toString(){let s=this.date.getMonth(),i=this.token.length;return i===2?String(s+1).padStart(2,"0"):i===3?this.locales.monthsShort[s]:i===4?this.locales.months[s]:String(s+1)}}return Hr=t,Hr}var zr,kn;function Cu(){if(kn)return zr;kn=1;let e=oe();class t extends e{constructor(s={}){super(s);}up(){this.date.setSeconds(this.date.getSeconds()+1);}down(){this.date.setSeconds(this.date.getSeconds()-1);}setTo(s){this.date.setSeconds(parseInt(s.substr(-2)));}toString(){let s=this.date.getSeconds();return this.token.length>1?String(s).padStart(2,"0"):s}}return zr=t,zr}var Vr,Tn;function $u(){if(Tn)return Vr;Tn=1;let e=oe();class t extends e{constructor(s={}){super(s);}up(){this.date.setFullYear(this.date.getFullYear()+1);}down(){this.date.setFullYear(this.date.getFullYear()-1);}setTo(s){this.date.setFullYear(s.substr(-4));}toString(){let s=String(this.date.getFullYear()).padStart(4,"0");return this.token.length===2?s.substr(-2):s}}return Vr=t,Vr}var Gr,Pn;function ku(){return Pn||(Pn=1,Gr={DatePart:oe(),Meridiem:vu(),Day:bu(),Hours:Ru(),Milliseconds:Eu(),Minutes:Iu(),Month:Su(),Seconds:Cu(),Year:$u()}),Gr}var Ur,An;function Tu(){if(An)return Ur;An=1;let e=B(),t=we(),{style:r,clear:s,figures:i}=X(),{erase:n,cursor:o}=J(),{DatePart:c,Meridiem:a,Day:h,Hours:l,Milliseconds:u,Minutes:d,Month:f,Seconds:p,Year:y}=ku(),m=/\\(.)|"((?:\\["\\]|[^"])+)"|(D[Do]?|d{3,4}|d)|(M{1,4})|(YY(?:YY)?)|([aA])|([Hh]{1,2})|(m{1,2})|(s{1,2})|(S{1,4})|./g,x={1:({token:v})=>v.replace(/\\(.)/g,"$1"),2:v=>new h(v),3:v=>new f(v),4:v=>new y(v),5:v=>new a(v),6:v=>new l(v),7:v=>new d(v),8:v=>new p(v),9:v=>new u(v)},g={months:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),monthsShort:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),weekdays:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),weekdaysShort:"Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(",")};class w extends t{constructor(b={}){super(b),this.msg=b.message,this.cursor=0,this.typed="",this.locales=Object.assign(g,b.locales),this._date=b.initial||new Date,this.errorMsg=b.error||"Please Enter A Valid Value",this.validator=b.validate||(()=>true),this.mask=b.mask||"YYYY-MM-DD HH:mm:ss",this.clear=s("",this.out.columns),this.render();}get value(){return this.date}get date(){return this._date}set date(b){b&&this._date.setTime(b.getTime());}set mask(b){let E;for(this.parts=[];E=m.exec(b);){let k=E.shift(),$=E.findIndex(Q=>Q!=null);this.parts.push($ in x?x[$]({token:E[$]||k,date:this.date,parts:this.parts,locales:this.locales}):E[$]||k);}let P=this.parts.reduce((k,$)=>(typeof $=="string"&&typeof k[k.length-1]=="string"?k[k.length-1]+=$:k.push($),k),[]);this.parts.splice(0),this.parts.push(...P),this.reset();}moveCursor(b){this.typed="",this.cursor=b,this.fire();}reset(){this.moveCursor(this.parts.findIndex(b=>b instanceof c)),this.fire(),this.render();}exit(){this.abort();}abort(){this.done=this.aborted=true,this.error=false,this.fire(),this.render(),this.out.write(`
|
|
60
60
|
`),this.close();}async validate(){let b=await this.validator(this.value);typeof b=="string"&&(this.errorMsg=b,b=false),this.error=!b;}async submit(){if(await this.validate(),this.error){this.color="red",this.fire(),this.render();return}this.done=true,this.aborted=false,this.fire(),this.render(),this.out.write(`
|
|
61
|
-
`),this.close();}up(){this.typed="",this.parts[this.cursor].up(),this.render();}down(){this.typed="",this.parts[this.cursor].down(),this.render();}left(){let b=this.parts[this.cursor].prev();if(b==null)return this.bell();this.moveCursor(this.parts.indexOf(b)),this.render();}right(){let b=this.parts[this.cursor].next();if(b==null)return this.bell();this.moveCursor(this.parts.indexOf(b)),this.render();}next(){let b=this.parts[this.cursor].next();this.moveCursor(b?this.parts.indexOf(b):this.parts.findIndex(
|
|
62
|
-
`).reduce((b,
|
|
63
|
-
${P?" ":i.pointerSmall} ${e.red().italic(
|
|
61
|
+
`),this.close();}up(){this.typed="",this.parts[this.cursor].up(),this.render();}down(){this.typed="",this.parts[this.cursor].down(),this.render();}left(){let b=this.parts[this.cursor].prev();if(b==null)return this.bell();this.moveCursor(this.parts.indexOf(b)),this.render();}right(){let b=this.parts[this.cursor].next();if(b==null)return this.bell();this.moveCursor(this.parts.indexOf(b)),this.render();}next(){let b=this.parts[this.cursor].next();this.moveCursor(b?this.parts.indexOf(b):this.parts.findIndex(E=>E instanceof c)),this.render();}_(b){/\d/.test(b)&&(this.typed+=b,this.parts[this.cursor].setTo(this.typed),this.render());}render(){this.closed||(this.firstRender?this.out.write(o.hide):this.out.write(s(this.outputText,this.out.columns)),super.render(),this.outputText=[r.symbol(this.done,this.aborted),e.bold(this.msg),r.delimiter(false),this.parts.reduce((b,E,P)=>b.concat(P===this.cursor&&!this.done?e.cyan().underline(E.toString()):E),[]).join("")].join(" "),this.error&&(this.outputText+=this.errorMsg.split(`
|
|
62
|
+
`).reduce((b,E,P)=>b+`
|
|
63
|
+
${P?" ":i.pointerSmall} ${e.red().italic(E)}`,"")),this.out.write(n.line+o.to(0)+this.outputText));}}return Ur=w,Ur}var Kr,On;function Pu(){if(On)return Kr;On=1;let e=B(),t=we(),{cursor:r,erase:s}=J(),{style:i,figures:n,clear:o,lines:c}=X(),a=/[0-9]/,h=d=>d!==void 0,l=(d,f)=>{let p=Math.pow(10,f);return Math.round(d*p)/p};class u extends t{constructor(f={}){super(f),this.transform=i.render(f.style),this.msg=f.message,this.initial=h(f.initial)?f.initial:"",this.float=!!f.float,this.round=f.round||2,this.inc=f.increment||1,this.min=h(f.min)?f.min:-1/0,this.max=h(f.max)?f.max:1/0,this.errorMsg=f.error||"Please Enter A Valid Value",this.validator=f.validate||(()=>true),this.color="cyan",this.value="",this.typed="",this.lastHit=0,this.render();}set value(f){!f&&f!==0?(this.placeholder=true,this.rendered=e.gray(this.transform.render(`${this.initial}`)),this._value=""):(this.placeholder=false,this.rendered=this.transform.render(`${l(f,this.round)}`),this._value=l(f,this.round)),this.fire();}get value(){return this._value}parse(f){return this.float?parseFloat(f):parseInt(f)}valid(f){return f==="-"||f==="."&&this.float||a.test(f)}reset(){this.typed="",this.value="",this.fire(),this.render();}exit(){this.abort();}abort(){let f=this.value;this.value=f!==""?f:this.initial,this.done=this.aborted=true,this.error=false,this.fire(),this.render(),this.out.write(`
|
|
64
64
|
`),this.close();}async validate(){let f=await this.validator(this.value);typeof f=="string"&&(this.errorMsg=f,f=false),this.error=!f;}async submit(){if(await this.validate(),this.error){this.color="red",this.fire(),this.render();return}let f=this.value;this.value=f!==""?f:this.initial,this.done=true,this.aborted=false,this.error=false,this.fire(),this.render(),this.out.write(`
|
|
65
65
|
`),this.close();}up(){if(this.typed="",this.value===""&&(this.value=this.min-this.inc),this.value>=this.max)return this.bell();this.value+=this.inc,this.color="cyan",this.fire(),this.render();}down(){if(this.typed="",this.value===""&&(this.value=this.min+this.inc),this.value<=this.min)return this.bell();this.value-=this.inc,this.color="cyan",this.fire(),this.render();}delete(){let f=this.value.toString();if(f.length===0)return this.bell();this.value=this.parse(f=f.slice(0,-1))||"",this.value!==""&&this.value<this.min&&(this.value=this.min),this.color="cyan",this.fire(),this.render();}next(){this.value=this.initial,this.fire(),this.render();}_(f,p){if(!this.valid(f))return this.bell();let y=Date.now();if(y-this.lastHit>1e3&&(this.typed=""),this.typed+=f,this.lastHit=y,this.color="cyan",f===".")return this.fire();this.value=Math.min(this.parse(this.typed),this.max),this.value>this.max&&(this.value=this.max),this.value<this.min&&(this.value=this.min),this.fire(),this.render();}render(){this.closed||(this.firstRender||(this.outputError&&this.out.write(r.down(c(this.outputError,this.out.columns)-1)+o(this.outputError,this.out.columns)),this.out.write(o(this.outputText,this.out.columns))),super.render(),this.outputError="",this.outputText=[i.symbol(this.done,this.aborted),e.bold(this.msg),i.delimiter(this.done),!this.done||!this.done&&!this.placeholder?e[this.color]().underline(this.rendered):this.rendered].join(" "),this.error&&(this.outputError+=this.errorMsg.split(`
|
|
66
66
|
`).reduce((f,p,y)=>f+`
|
|
67
|
-
${y?" ":n.pointerSmall} ${e.red().italic(p)}`,"")),this.out.write(s.line+r.to(0)+this.outputText+r.save+this.outputError+r.restore));}}return
|
|
67
|
+
${y?" ":n.pointerSmall} ${e.red().italic(p)}`,"")),this.out.write(s.line+r.to(0)+this.outputText+r.save+this.outputError+r.restore));}}return Kr=u,Kr}var qr,jn;function eo(){if(jn)return qr;jn=1;let e=B(),{cursor:t}=J(),r=we(),{clear:s,figures:i,style:n,wrap:o,entriesToDisplay:c}=X();class a extends r{constructor(l={}){super(l),this.msg=l.message,this.cursor=l.cursor||0,this.scrollIndex=l.cursor||0,this.hint=l.hint||"",this.warn=l.warn||"- This option is disabled -",this.minSelected=l.min,this.showMinError=false,this.maxChoices=l.max,this.instructions=l.instructions,this.optionsPerPage=l.optionsPerPage||10,this.value=l.choices.map((u,d)=>(typeof u=="string"&&(u={title:u,value:d}),{title:u&&(u.title||u.value||u),description:u&&u.description,value:u&&(u.value===void 0?d:u.value),selected:u&&u.selected,disabled:u&&u.disabled})),this.clear=s("",this.out.columns),l.overrideRender||this.render();}reset(){this.value.map(l=>!l.selected),this.cursor=0,this.fire(),this.render();}selected(){return this.value.filter(l=>l.selected)}exit(){this.abort();}abort(){this.done=this.aborted=true,this.fire(),this.render(),this.out.write(`
|
|
68
68
|
`),this.close();}submit(){let l=this.value.filter(u=>u.selected);this.minSelected&&l.length<this.minSelected?(this.showMinError=true,this.render()):(this.done=true,this.aborted=false,this.fire(),this.render(),this.out.write(`
|
|
69
69
|
`),this.close());}first(){this.cursor=0,this.render();}last(){this.cursor=this.value.length-1,this.render();}next(){this.cursor=(this.cursor+1)%this.value.length,this.render();}up(){this.cursor===0?this.cursor=this.value.length-1:this.cursor--,this.render();}down(){this.cursor===this.value.length-1?this.cursor=0:this.cursor++,this.render();}left(){this.value[this.cursor].selected=false,this.render();}right(){if(this.value.filter(l=>l.selected).length>=this.maxChoices)return this.bell();this.value[this.cursor].selected=true,this.render();}handleSpaceToggle(){let l=this.value[this.cursor];if(l.selected)l.selected=false,this.render();else {if(l.disabled||this.value.filter(u=>u.selected).length>=this.maxChoices)return this.bell();l.selected=true,this.render();}}toggleAll(){if(this.maxChoices!==void 0||this.value[this.cursor].disabled)return this.bell();let l=!this.value[this.cursor].selected;this.value.filter(u=>!u.disabled).forEach(u=>u.selected=l),this.render();}_(l,u){if(l===" ")this.handleSpaceToggle();else if(l==="a")this.toggleAll();else return this.bell()}renderInstructions(){return this.instructions===void 0||this.instructions?typeof this.instructions=="string"?this.instructions:`
|
|
70
70
|
Instructions:
|
|
@@ -74,13 +74,13 @@ Instructions:
|
|
|
74
74
|
`:"")+" enter/return: Complete answer":""}renderOption(l,u,d,f){let p=(u.selected?e.green(i.radioOn):i.radioOff)+" "+f+" ",y,m;return u.disabled?y=l===d?e.gray().underline(u.title):e.strikethrough().gray(u.title):(y=l===d?e.cyan().underline(u.title):u.title,l===d&&u.description&&(m=` - ${u.description}`,(p.length+y.length+m.length>=this.out.columns||u.description.split(/\r?\n/).length>1)&&(m=`
|
|
75
75
|
`+o(u.description,{margin:p.length,width:this.out.columns})))),p+y+e.gray(m||"")}paginateOptions(l){if(l.length===0)return e.red("No matches for this query.");let{startIndex:u,endIndex:d}=c(this.cursor,l.length,this.optionsPerPage),f,p=[];for(let y=u;y<d;y++)y===u&&u>0?f=i.arrowUp:y===d-1&&d<l.length?f=i.arrowDown:f=" ",p.push(this.renderOption(this.cursor,l[y],y,f));return `
|
|
76
76
|
`+p.join(`
|
|
77
|
-
`)}renderOptions(l){return this.done?"":this.paginateOptions(l)}renderDoneOrInstructions(){if(this.done)return this.value.filter(u=>u.selected).map(u=>u.title).join(", ");let l=[e.gray(this.hint),this.renderInstructions()];return this.value[this.cursor].disabled&&l.push(e.yellow(this.warn)),l.join(" ")}render(){if(this.closed)return;this.firstRender&&this.out.write(t.hide),super.render();let l=[n.symbol(this.done,this.aborted),e.bold(this.msg),n.delimiter(false),this.renderDoneOrInstructions()].join(" ");this.showMinError&&(l+=e.red(`You must select a minimum of ${this.minSelected} choices.`),this.showMinError=false),l+=this.renderOptions(this.value),this.out.write(this.clear+l),this.clear=s(l,this.out.columns);}}return
|
|
77
|
+
`)}renderOptions(l){return this.done?"":this.paginateOptions(l)}renderDoneOrInstructions(){if(this.done)return this.value.filter(u=>u.selected).map(u=>u.title).join(", ");let l=[e.gray(this.hint),this.renderInstructions()];return this.value[this.cursor].disabled&&l.push(e.yellow(this.warn)),l.join(" ")}render(){if(this.closed)return;this.firstRender&&this.out.write(t.hide),super.render();let l=[n.symbol(this.done,this.aborted),e.bold(this.msg),n.delimiter(false),this.renderDoneOrInstructions()].join(" ");this.showMinError&&(l+=e.red(`You must select a minimum of ${this.minSelected} choices.`),this.showMinError=false),l+=this.renderOptions(this.value),this.out.write(this.clear+l),this.clear=s(l,this.out.columns);}}return qr=a,qr}var Br,_n;function Au(){if(_n)return Br;_n=1;let e=B(),t=we(),{erase:r,cursor:s}=J(),{style:i,clear:n,figures:o,wrap:c,entriesToDisplay:a}=X(),h=(f,p)=>f[p]&&(f[p].value||f[p].title||f[p]),l=(f,p)=>f[p]&&(f[p].title||f[p].value||f[p]),u=(f,p)=>{let y=f.findIndex(m=>m.value===p||m.title===p);return y>-1?y:void 0};class d extends t{constructor(p={}){super(p),this.msg=p.message,this.suggest=p.suggest,this.choices=p.choices,this.initial=typeof p.initial=="number"?p.initial:u(p.choices,p.initial),this.select=this.initial||p.cursor||0,this.i18n={noMatches:p.noMatches||"no matches found"},this.fallback=p.fallback||this.initial,this.clearFirst=p.clearFirst||false,this.suggestions=[],this.input="",this.limit=p.limit||10,this.cursor=0,this.transform=i.render(p.style),this.scale=this.transform.scale,this.render=this.render.bind(this),this.complete=this.complete.bind(this),this.clear=n("",this.out.columns),this.complete(this.render),this.render();}set fallback(p){this._fb=Number.isSafeInteger(parseInt(p))?parseInt(p):p;}get fallback(){let p;return typeof this._fb=="number"?p=this.choices[this._fb]:typeof this._fb=="string"&&(p={title:this._fb}),p||this._fb||{title:this.i18n.noMatches}}moveSelect(p){this.select=p,this.suggestions.length>0?this.value=h(this.suggestions,p):this.value=this.fallback.value,this.fire();}async complete(p){let y=this.completing=this.suggest(this.input,this.choices),m=await y;if(this.completing!==y)return;this.suggestions=m.map((g,w,v)=>({title:l(v,w),value:h(v,w),description:g.description})),this.completing=false;let x=Math.max(m.length-1,0);this.moveSelect(Math.min(x,this.select)),p&&p();}reset(){this.input="",this.complete(()=>{this.moveSelect(this.initial!==void 0?this.initial:0),this.render();}),this.render();}exit(){this.clearFirst&&this.input.length>0?this.reset():(this.done=this.exited=true,this.aborted=false,this.fire(),this.render(),this.out.write(`
|
|
78
78
|
`),this.close());}abort(){this.done=this.aborted=true,this.exited=false,this.fire(),this.render(),this.out.write(`
|
|
79
79
|
`),this.close();}submit(){this.done=true,this.aborted=this.exited=false,this.fire(),this.render(),this.out.write(`
|
|
80
80
|
`),this.close();}_(p,y){let m=this.input.slice(0,this.cursor),x=this.input.slice(this.cursor);this.input=`${m}${p}${x}`,this.cursor=m.length+1,this.complete(this.render),this.render();}delete(){if(this.cursor===0)return this.bell();let p=this.input.slice(0,this.cursor-1),y=this.input.slice(this.cursor);this.input=`${p}${y}`,this.complete(this.render),this.cursor=this.cursor-1,this.render();}deleteForward(){if(this.cursor*this.scale>=this.rendered.length)return this.bell();let p=this.input.slice(0,this.cursor),y=this.input.slice(this.cursor+1);this.input=`${p}${y}`,this.complete(this.render),this.render();}first(){this.moveSelect(0),this.render();}last(){this.moveSelect(this.suggestions.length-1),this.render();}up(){this.select===0?this.moveSelect(this.suggestions.length-1):this.moveSelect(this.select-1),this.render();}down(){this.select===this.suggestions.length-1?this.moveSelect(0):this.moveSelect(this.select+1),this.render();}next(){this.select===this.suggestions.length-1?this.moveSelect(0):this.moveSelect(this.select+1),this.render();}nextPage(){this.moveSelect(Math.min(this.select+this.limit,this.suggestions.length-1)),this.render();}prevPage(){this.moveSelect(Math.max(this.select-this.limit,0)),this.render();}left(){if(this.cursor<=0)return this.bell();this.cursor=this.cursor-1,this.render();}right(){if(this.cursor*this.scale>=this.rendered.length)return this.bell();this.cursor=this.cursor+1,this.render();}renderOption(p,y,m,x){let g,w=m?o.arrowUp:x?o.arrowDown:" ",v=y?e.cyan().underline(p.title):p.title;return w=(y?e.cyan(o.pointer)+" ":" ")+w,p.description&&(g=` - ${p.description}`,(w.length+v.length+g.length>=this.out.columns||p.description.split(/\r?\n/).length>1)&&(g=`
|
|
81
81
|
`+c(p.description,{margin:3,width:this.out.columns}))),w+" "+v+e.gray(g||"")}render(){if(this.closed)return;this.firstRender?this.out.write(s.hide):this.out.write(n(this.outputText,this.out.columns)),super.render();let{startIndex:p,endIndex:y}=a(this.select,this.choices.length,this.limit);if(this.outputText=[i.symbol(this.done,this.aborted,this.exited),e.bold(this.msg),i.delimiter(this.completing),this.done&&this.suggestions[this.select]?this.suggestions[this.select].title:this.rendered=this.transform.render(this.input)].join(" "),!this.done){let m=this.suggestions.slice(p,y).map((x,g)=>this.renderOption(x,this.select===g+p,g===0&&p>0,g+p===y-1&&y<this.choices.length)).join(`
|
|
82
82
|
`);this.outputText+=`
|
|
83
|
-
`+(m||e.gray(this.fallback.title));}this.out.write(r.line+s.to(0)+this.outputText);}}return
|
|
83
|
+
`+(m||e.gray(this.fallback.title));}this.out.write(r.line+s.to(0)+this.outputText);}}return Br=d,Br}var Jr,Nn;function Ou(){if(Nn)return Jr;Nn=1;let e=B(),{cursor:t}=J(),r=eo(),{clear:s,style:i,figures:n}=X();class o extends r{constructor(a={}){a.overrideRender=true,super(a),this.inputValue="",this.clear=s("",this.out.columns),this.filteredOptions=this.value,this.render();}last(){this.cursor=this.filteredOptions.length-1,this.render();}next(){this.cursor=(this.cursor+1)%this.filteredOptions.length,this.render();}up(){this.cursor===0?this.cursor=this.filteredOptions.length-1:this.cursor--,this.render();}down(){this.cursor===this.filteredOptions.length-1?this.cursor=0:this.cursor++,this.render();}left(){this.filteredOptions[this.cursor].selected=false,this.render();}right(){if(this.value.filter(a=>a.selected).length>=this.maxChoices)return this.bell();this.filteredOptions[this.cursor].selected=true,this.render();}delete(){this.inputValue.length&&(this.inputValue=this.inputValue.substr(0,this.inputValue.length-1),this.updateFilteredOptions());}updateFilteredOptions(){let a=this.filteredOptions[this.cursor];this.filteredOptions=this.value.filter(l=>this.inputValue?!!(typeof l.title=="string"&&l.title.toLowerCase().includes(this.inputValue.toLowerCase())||typeof l.value=="string"&&l.value.toLowerCase().includes(this.inputValue.toLowerCase())):true);let h=this.filteredOptions.findIndex(l=>l===a);this.cursor=h<0?0:h,this.render();}handleSpaceToggle(){let a=this.filteredOptions[this.cursor];if(a.selected)a.selected=false,this.render();else {if(a.disabled||this.value.filter(h=>h.selected).length>=this.maxChoices)return this.bell();a.selected=true,this.render();}}handleInputChange(a){this.inputValue=this.inputValue+a,this.updateFilteredOptions();}_(a,h){a===" "?this.handleSpaceToggle():this.handleInputChange(a);}renderInstructions(){return this.instructions===void 0||this.instructions?typeof this.instructions=="string"?this.instructions:`
|
|
84
84
|
Instructions:
|
|
85
85
|
${n.arrowUp}/${n.arrowDown}: Highlight option
|
|
86
86
|
${n.arrowLeft}/${n.arrowRight}/[space]: Toggle selection
|
|
@@ -88,22 +88,22 @@ Instructions:
|
|
|
88
88
|
enter/return: Complete answer
|
|
89
89
|
`:""}renderCurrentInput(){return `
|
|
90
90
|
Filtered results for: ${this.inputValue?this.inputValue:e.gray("Enter something to filter")}
|
|
91
|
-
`}renderOption(a,h,l,u){let d=(h.selected?e.green(n.radioOn):n.radioOff)+" "+u+" ",f;return h.disabled?f=a===l?e.gray().underline(h.title):e.strikethrough().gray(h.title):f=a===l?e.cyan().underline(h.title):h.title,d+f}renderDoneOrInstructions(){if(this.done)return this.value.filter(h=>h.selected).map(h=>h.title).join(", ");let a=[e.gray(this.hint),this.renderInstructions(),this.renderCurrentInput()];return this.filteredOptions.length&&this.filteredOptions[this.cursor].disabled&&a.push(e.yellow(this.warn)),a.join(" ")}render(){if(this.closed)return;this.firstRender&&this.out.write(t.hide),super.render();let a=[i.symbol(this.done,this.aborted),e.bold(this.msg),i.delimiter(false),this.renderDoneOrInstructions()].join(" ");this.showMinError&&(a+=e.red(`You must select a minimum of ${this.minSelected} choices.`),this.showMinError=false),a+=this.renderOptions(this.filteredOptions),this.out.write(this.clear+a),this.clear=s(a,this.out.columns);}}return
|
|
91
|
+
`}renderOption(a,h,l,u){let d=(h.selected?e.green(n.radioOn):n.radioOff)+" "+u+" ",f;return h.disabled?f=a===l?e.gray().underline(h.title):e.strikethrough().gray(h.title):f=a===l?e.cyan().underline(h.title):h.title,d+f}renderDoneOrInstructions(){if(this.done)return this.value.filter(h=>h.selected).map(h=>h.title).join(", ");let a=[e.gray(this.hint),this.renderInstructions(),this.renderCurrentInput()];return this.filteredOptions.length&&this.filteredOptions[this.cursor].disabled&&a.push(e.yellow(this.warn)),a.join(" ")}render(){if(this.closed)return;this.firstRender&&this.out.write(t.hide),super.render();let a=[i.symbol(this.done,this.aborted),e.bold(this.msg),i.delimiter(false),this.renderDoneOrInstructions()].join(" ");this.showMinError&&(a+=e.red(`You must select a minimum of ${this.minSelected} choices.`),this.showMinError=false),a+=this.renderOptions(this.filteredOptions),this.out.write(this.clear+a),this.clear=s(a,this.out.columns);}}return Jr=o,Jr}var Yr,Mn;function ju(){if(Mn)return Yr;Mn=1;let e=B(),t=we(),{style:r,clear:s}=X(),{erase:i,cursor:n}=J();class o extends t{constructor(a={}){super(a),this.msg=a.message,this.value=a.initial,this.initialValue=!!a.initial,this.yesMsg=a.yes||"yes",this.yesOption=a.yesOption||"(Y/n)",this.noMsg=a.no||"no",this.noOption=a.noOption||"(y/N)",this.render();}reset(){this.value=this.initialValue,this.fire(),this.render();}exit(){this.abort();}abort(){this.done=this.aborted=true,this.fire(),this.render(),this.out.write(`
|
|
92
92
|
`),this.close();}submit(){this.value=this.value||false,this.done=true,this.aborted=false,this.fire(),this.render(),this.out.write(`
|
|
93
|
-
`),this.close();}_(a,h){return a.toLowerCase()==="y"?(this.value=true,this.submit()):a.toLowerCase()==="n"?(this.value=false,this.submit()):this.bell()}render(){this.closed||(this.firstRender?this.out.write(n.hide):this.out.write(s(this.outputText,this.out.columns)),super.render(),this.outputText=[r.symbol(this.done,this.aborted),e.bold(this.msg),r.delimiter(this.done),this.done?this.value?this.yesMsg:this.noMsg:e.gray(this.initialValue?this.yesOption:this.noOption)].join(" "),this.out.write(i.line+n.to(0)+this.outputText));}}return Jr=o,Jr}var Yr,Nn;function Fu(){return Nn||(Nn=1,Yr={TextPrompt:bu(),SelectPrompt:Ru(),TogglePrompt:Iu(),DatePrompt:ju(),NumberPrompt:_u(),MultiselectPrompt:Xn(),AutocompletePrompt:Nu(),AutocompleteMultiselectPrompt:Mu(),ConfirmPrompt:Lu()}),Yr}var Mn;function Du(){return Mn||(Mn=1,function(e){let t=e,r=Fu(),s=o=>o;function i(o,c,a={}){return new Promise((h,l)=>{let u=new r[o](c),d=a.onAbort||s,f=a.onSubmit||s,p=a.onExit||s;u.on("state",c.onState||s),u.on("submit",y=>h(f(y))),u.on("exit",y=>h(p(y))),u.on("abort",y=>l(d(y)));})}t.text=o=>i("TextPrompt",o),t.password=o=>(o.style="password",t.text(o)),t.invisible=o=>(o.style="invisible",t.text(o)),t.number=o=>i("NumberPrompt",o),t.date=o=>i("DatePrompt",o),t.confirm=o=>i("ConfirmPrompt",o),t.list=o=>{let c=o.separator||",";return i("TextPrompt",o,{onSubmit:a=>a.split(c).map(h=>h.trim())})},t.toggle=o=>i("TogglePrompt",o),t.select=o=>i("SelectPrompt",o),t.multiselect=o=>{o.choices=[].concat(o.choices||[]);let c=a=>a.filter(h=>h.selected).map(h=>h.value);return i("MultiselectPrompt",o,{onAbort:c,onSubmit:c})},t.autocompleteMultiselect=o=>{o.choices=[].concat(o.choices||[]);let c=a=>a.filter(h=>h.selected).map(h=>h.value);return i("AutocompleteMultiselectPrompt",o,{onAbort:c,onSubmit:c})};let n=(o,c)=>Promise.resolve(c.filter(a=>a.title.slice(0,o.length).toLowerCase()===o.toLowerCase()));t.autocomplete=o=>(o.suggest=o.suggest||n,o.choices=[].concat(o.choices||[]),i("AutocompletePrompt",o));}(wr)),wr}var Zr,Ln;function Wu(){if(Ln)return Zr;Ln=1;let e=Du(),t=["suggest","format","onState","validate","onRender","type"],r=()=>{};async function s(c=[],{onSubmit:a=r,onCancel:h=r}={}){let l={},u=s._override||{};c=[].concat(c);let d,f,p,y,m,x,g=async(w,v,b=false)=>{if(!(!b&&w.validate&&w.validate(v)!==true))return w.format?await w.format(v,l):v};for(f of c)if({name:y,type:m}=f,typeof m=="function"&&(m=await m(d,{...l},f),f.type=m),!!m){for(let w in f){if(t.includes(w))continue;let v=f[w];f[w]=typeof v=="function"?await v(d,{...l},x):v;}if(x=f,typeof f.message!="string")throw new Error("prompt message is required");if({name:y,type:m}=f,e[m]===void 0)throw new Error(`prompt type (${m}) is not defined`);if(u[f.name]!==void 0&&(d=await g(f,u[f.name]),d!==void 0)){l[y]=d;continue}try{d=s._injected?i(s._injected,f.initial):await e[m](f),l[y]=d=await g(f,d,!0),p=await a(f,d,l);}catch{p=!await h(f,l);}if(p)return l}return l}function i(c,a){let h=c.shift();if(h instanceof Error)throw h;return h===void 0?a:h}function n(c){s._injected=(s._injected||[]).concat(c);}function o(c){s._override=Object.assign({},c);}return Zr=Object.assign(s,{prompt:s,prompts:e,inject:n,override:o}),Zr}var Xr,Fn;function Hu(){return Fn||(Fn=1,Xr=Wu()),Xr}var zu=Hu(),Vu=is(zu),os=globalThis.window?.document!==void 0;globalThis.process?.versions?.node;globalThis.process?.versions?.bun;globalThis.Deno?.version?.deno;globalThis.process?.versions?.electron;globalThis.navigator?.userAgent?.includes("jsdom");typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;typeof DedicatedWorkerGlobalScope<"u"&&globalThis instanceof DedicatedWorkerGlobalScope;typeof SharedWorkerGlobalScope<"u"&&globalThis instanceof SharedWorkerGlobalScope;typeof ServiceWorkerGlobalScope<"u"&&globalThis instanceof ServiceWorkerGlobalScope;var Gt=globalThis.navigator?.userAgentData?.platform;Gt==="macOS"||globalThis.navigator?.platform==="MacIntel"||globalThis.navigator?.userAgent?.includes(" Mac ")===true||globalThis.process?.platform;Gt==="Windows"||globalThis.navigator?.platform==="Win32"||globalThis.process?.platform;Gt==="Linux"||globalThis.navigator?.platform?.startsWith("Linux")===true||globalThis.navigator?.userAgent?.includes(" Linux ")===true||globalThis.process?.platform;Gt==="Android"||globalThis.navigator?.platform==="Android"||globalThis.navigator?.userAgent?.includes(" Android ")===true||globalThis.process?.platform;var Dn="\x1B]",Wn="\x07",Vt=";";!os&&Z.env.TERM_PROGRAM;!os&&Z.platform;os||Z.cwd;var Gu=(e,t)=>[Dn,"8",Vt,Vt,t,Wn,e,Dn,"8",Vt,Vt,Wn].join(""),Qr,Hn;function Qn(){return Hn||(Hn=1,Qr=(e,t=process.argv)=>{let r=e.startsWith("-")?"":e.length===1?"-":"--",s=t.indexOf(r+e),i=t.indexOf("--");return s!==-1&&(i===-1||s<i)}),Qr}var es,zn;function Uu(){if(zn)return es;zn=1;let e=uu,t=hu,r=Qn(),{env:s}=process,i;r("no-color")||r("no-colors")||r("color=false")||r("color=never")?i=0:(r("color")||r("colors")||r("color=true")||r("color=always"))&&(i=1),"FORCE_COLOR"in s&&(s.FORCE_COLOR==="true"?i=1:s.FORCE_COLOR==="false"?i=0:i=s.FORCE_COLOR.length===0?1:Math.min(parseInt(s.FORCE_COLOR,10),3));function n(a){return a===0?false:{level:a,hasBasic:true,has256:a>=2,has16m:a>=3}}function o(a,h){if(i===0)return 0;if(r("color=16m")||r("color=full")||r("color=truecolor"))return 3;if(r("color=256"))return 2;if(a&&!h&&i===void 0)return 0;let l=i||0;if(s.TERM==="dumb")return l;if(process.platform==="win32"){let u=e.release().split(".");return Number(u[0])>=10&&Number(u[2])>=10586?Number(u[2])>=14931?3:2:1}if("CI"in s)return ["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(u=>u in s)||s.CI_NAME==="codeship"?1:l;if("TEAMCITY_VERSION"in s)return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(s.TEAMCITY_VERSION)?1:0;if(s.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in s){let u=parseInt((s.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(s.TERM_PROGRAM){case "iTerm.app":return u>=3?3:2;case "Apple_Terminal":return 2}}return /-256(color)?$/i.test(s.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(s.TERM)||"COLORTERM"in s?1:l}function c(a){let h=o(a,a&&a.isTTY);return n(h)}return es={supportsColor:c,stdout:n(o(true,t.isatty(1))),stderr:n(o(true,t.isatty(2)))},es}var ts,Vn;function Ku(){if(Vn)return ts;Vn=1;let e=Uu(),t=Qn();function r(i){if(/^\d{3,4}$/.test(i)){let o=/(\d{1,2})(\d{2})/.exec(i)||[];return {major:0,minor:parseInt(o[1],10),patch:parseInt(o[2],10)}}let n=(i||"").split(".").map(o=>parseInt(o,10));return {major:n[0],minor:n[1],patch:n[2]}}function s(i){let{CI:n,FORCE_HYPERLINK:o,NETLIFY:c,TEAMCITY_VERSION:a,TERM_PROGRAM:h,TERM_PROGRAM_VERSION:l,VTE_VERSION:u,TERM:d}=process.env;if(o)return !(o.length>0&&parseInt(o,10)===0);if(t("no-hyperlink")||t("no-hyperlinks")||t("hyperlink=false")||t("hyperlink=never"))return false;if(t("hyperlink=true")||t("hyperlink=always")||c)return true;if(!e.supportsColor(i)||i&&!i.isTTY)return false;if("WT_SESSION"in process.env)return true;if(process.platform==="win32"||n||a)return false;if(h){let f=r(l||"");switch(h){case "iTerm.app":return f.major===3?f.minor>=1:f.major>3;case "WezTerm":return f.major>=20200620;case "vscode":return f.major>1||f.major===1&&f.minor>=72;case "ghostty":return true}}if(u){if(u==="0.50.0")return false;let f=r(u);return f.major>0||f.minor>=50}switch(d){case "alacritty":return true}return false}return ts={supportsHyperlink:s,stdout:s(process.stdout),stderr:s(process.stderr)},ts}var qu=Ku(),as=is(qu);function nt(e,t,{target:r="stdout",...s}={}){return as[r]?Gu(e,t):s.fallback===false?e:typeof s.fallback=="function"?s.fallback(e,t):`${e} (\u200B${t}\u200B)`}nt.isSupported=as.stdout;nt.stderr=(e,t,r={})=>nt(e,t,{target:"stderr",...r});nt.stderr.isSupported=as.stderr;var q={},Ce={},Gn;function Bu(){if(Gn)return Ce;Gn=1,Object.defineProperty(Ce,"__esModule",{value:true}),Ce.sync=Ce.isexe=void 0;let e=Jn,t=Zi__default,r=async(o,c={})=>{let{ignoreErrors:a=false}=c;try{return i(await(0,t.stat)(o),c)}catch(h){let l=h;if(a||l.code==="EACCES")return false;throw l}};Ce.isexe=r;let s=(o,c={})=>{let{ignoreErrors:a=false}=c;try{return i((0,e.statSync)(o),c)}catch(h){let l=h;if(a||l.code==="EACCES")return false;throw l}};Ce.sync=s;let i=(o,c)=>o.isFile()&&n(o,c),n=(o,c)=>{let a=c.uid??process.getuid?.(),h=c.groups??process.getgroups?.()??[],l=c.gid??process.getgid?.()??h[0];if(a===void 0||l===void 0)throw new Error("cannot get uid or gid");let u=new Set([l,...h]),d=o.mode,f=o.uid,p=o.gid,y=parseInt("100",8),m=parseInt("010",8),x=parseInt("001",8),g=y|m;return !!(d&x||d&m&&u.has(p)||d&y&&f===a||d&g&&a===0)};return Ce}var $e={},Un;function Ju(){if(Un)return $e;Un=1,Object.defineProperty($e,"__esModule",{value:true}),$e.sync=$e.isexe=void 0;let e=Jn,t=Zi__default,r=async(o,c={})=>{let{ignoreErrors:a=false}=c;try{return n(await(0,t.stat)(o),o,c)}catch(h){let l=h;if(a||l.code==="EACCES")return false;throw l}};$e.isexe=r;let s=(o,c={})=>{let{ignoreErrors:a=false}=c;try{return n((0,e.statSync)(o),o,c)}catch(h){let l=h;if(a||l.code==="EACCES")return false;throw l}};$e.sync=s;let i=(o,c)=>{let{pathExt:a=process.env.PATHEXT||""}=c,h=a.split(";");if(h.indexOf("")!==-1)return true;for(let l=0;l<h.length;l++){let u=h[l].toLowerCase(),d=o.substring(o.length-u.length).toLowerCase();if(u&&d===u)return true}return false},n=(o,c,a)=>o.isFile()&&i(c,a);return $e}var rs={},Kn;function Yu(){return Kn||(Kn=1,Object.defineProperty(rs,"__esModule",{value:true})),rs}var qn;function Zu(){return qn||(qn=1,function(e){var t=q&&q.__createBinding||(Object.create?function(h,l,u,d){d===void 0&&(d=u);var f=Object.getOwnPropertyDescriptor(l,u);(!f||("get"in f?!l.__esModule:f.writable||f.configurable))&&(f={enumerable:true,get:function(){return l[u]}}),Object.defineProperty(h,d,f);}:function(h,l,u,d){d===void 0&&(d=u),h[d]=l[u];}),r=q&&q.__setModuleDefault||(Object.create?function(h,l){Object.defineProperty(h,"default",{enumerable:true,value:l});}:function(h,l){h.default=l;}),s=q&&q.__importStar||function(h){if(h&&h.__esModule)return h;var l={};if(h!=null)for(var u in h)u!=="default"&&Object.prototype.hasOwnProperty.call(h,u)&&t(l,h,u);return r(l,h),l},i=q&&q.__exportStar||function(h,l){for(var u in h)u!=="default"&&!Object.prototype.hasOwnProperty.call(l,u)&&t(l,h,u);};Object.defineProperty(e,"__esModule",{value:true}),e.sync=e.isexe=e.posix=e.win32=void 0;let n=s(Bu());e.posix=n;let o=s(Ju());e.win32=o,i(Yu(),e);let a=(process.env._ISEXE_TEST_PLATFORM_||process.platform)==="win32"?o:n;e.isexe=a.isexe,e.sync=a.sync;}(q)),q}var ss,Bn;function Xu(){if(Bn)return ss;Bn=1;let{isexe:e,sync:t}=Zu(),{join:r,delimiter:s,sep:i,posix:n}=R__default,o=process.platform==="win32",c=new RegExp(`[${n.sep}${i===n.sep?"":i}]`.replace(/(\\)/g,"\\$1")),a=new RegExp(`^\\.${c.source}`),h=p=>Object.assign(new Error(`not found: ${p}`),{code:"ENOENT"}),l=(p,{path:y=process.env.PATH,pathExt:m=process.env.PATHEXT,delimiter:x=s})=>{let g=p.match(c)?[""]:[...o?[process.cwd()]:[],...(y||"").split(x)];if(o){let w=m||[".EXE",".CMD",".BAT",".COM"].join(x),v=w.split(x).flatMap(b=>[b,b.toLowerCase()]);return p.includes(".")&&v[0]!==""&&v.unshift(""),{pathEnv:g,pathExt:v,pathExtExe:w}}return {pathEnv:g,pathExt:[""]}},u=(p,y)=>{let m=/^".*"$/.test(p)?p.slice(1,-1):p;return (!m&&a.test(y)?y.slice(0,2):"")+r(m,y)},d=async(p,y={})=>{let{pathEnv:m,pathExt:x,pathExtExe:g}=l(p,y),w=[];for(let v of m){let b=u(v,p);for(let I of x){let P=b+I;if(await e(P,{pathExt:g,ignoreErrors:true})){if(!y.all)return P;w.push(P);}}}if(y.all&&w.length)return w;if(y.nothrow)return null;throw h(p)},f=(p,y={})=>{let{pathEnv:m,pathExt:x,pathExtExe:g}=l(p,y),w=[];for(let v of m){let b=u(v,p);for(let I of x){let P=b+I;if(t(P,{pathExt:g,ignoreErrors:true})){if(!y.all)return P;w.push(P);}}}if(y.all&&w.length)return w;if(y.nothrow)return null;throw h(p)};return ss=d,d.sync=f,ss}var Qu=Xu(),eh=is(Qu);join(uu.tmpdir(),"antfu-ni");function eo(e){return eh.sync(e,{nothrow:true})!==null}async function cs({autoInstall:e,programmatic:t,cwd:r}={}){let{name:s,agent:i,version:n}=await mr({cwd:r,onUnknown:o=>{t||console.warn("[ni] Unknown packageManager:",o);}})||{};if(s&&!eo(s)&&!t){if(!e){console.warn(`[ni] Detected ${s} but it doesn't seem to be installed.
|
|
94
|
-
`),Z.env.CI&&Z.exit(1);let o=nt(s,
|
|
93
|
+
`),this.close();}_(a,h){return a.toLowerCase()==="y"?(this.value=true,this.submit()):a.toLowerCase()==="n"?(this.value=false,this.submit()):this.bell()}render(){this.closed||(this.firstRender?this.out.write(n.hide):this.out.write(s(this.outputText,this.out.columns)),super.render(),this.outputText=[r.symbol(this.done,this.aborted),e.bold(this.msg),r.delimiter(this.done),this.done?this.value?this.yesMsg:this.noMsg:e.gray(this.initialValue?this.yesOption:this.noOption)].join(" "),this.out.write(i.line+n.to(0)+this.outputText));}}return Yr=o,Yr}var Zr,Ln;function _u(){return Ln||(Ln=1,Zr={TextPrompt:yu(),SelectPrompt:wu(),TogglePrompt:xu(),DatePrompt:Tu(),NumberPrompt:Pu(),MultiselectPrompt:eo(),AutocompletePrompt:Au(),AutocompleteMultiselectPrompt:Ou(),ConfirmPrompt:ju()}),Zr}var Fn;function Nu(){return Fn||(Fn=1,function(e){let t=e,r=_u(),s=o=>o;function i(o,c,a={}){return new Promise((h,l)=>{let u=new r[o](c),d=a.onAbort||s,f=a.onSubmit||s,p=a.onExit||s;u.on("state",c.onState||s),u.on("submit",y=>h(f(y))),u.on("exit",y=>h(p(y))),u.on("abort",y=>l(d(y)));})}t.text=o=>i("TextPrompt",o),t.password=o=>(o.style="password",t.text(o)),t.invisible=o=>(o.style="invisible",t.text(o)),t.number=o=>i("NumberPrompt",o),t.date=o=>i("DatePrompt",o),t.confirm=o=>i("ConfirmPrompt",o),t.list=o=>{let c=o.separator||",";return i("TextPrompt",o,{onSubmit:a=>a.split(c).map(h=>h.trim())})},t.toggle=o=>i("TogglePrompt",o),t.select=o=>i("SelectPrompt",o),t.multiselect=o=>{o.choices=[].concat(o.choices||[]);let c=a=>a.filter(h=>h.selected).map(h=>h.value);return i("MultiselectPrompt",o,{onAbort:c,onSubmit:c})},t.autocompleteMultiselect=o=>{o.choices=[].concat(o.choices||[]);let c=a=>a.filter(h=>h.selected).map(h=>h.value);return i("AutocompleteMultiselectPrompt",o,{onAbort:c,onSubmit:c})};let n=(o,c)=>Promise.resolve(c.filter(a=>a.title.slice(0,o.length).toLowerCase()===o.toLowerCase()));t.autocomplete=o=>(o.suggest=o.suggest||n,o.choices=[].concat(o.choices||[]),i("AutocompletePrompt",o));}(xr)),xr}var Xr,Dn;function Mu(){if(Dn)return Xr;Dn=1;let e=Nu(),t=["suggest","format","onState","validate","onRender","type"],r=()=>{};async function s(c=[],{onSubmit:a=r,onCancel:h=r}={}){let l={},u=s._override||{};c=[].concat(c);let d,f,p,y,m,x,g=async(w,v,b=false)=>{if(!(!b&&w.validate&&w.validate(v)!==true))return w.format?await w.format(v,l):v};for(f of c)if({name:y,type:m}=f,typeof m=="function"&&(m=await m(d,{...l},f),f.type=m),!!m){for(let w in f){if(t.includes(w))continue;let v=f[w];f[w]=typeof v=="function"?await v(d,{...l},x):v;}if(x=f,typeof f.message!="string")throw new Error("prompt message is required");if({name:y,type:m}=f,e[m]===void 0)throw new Error(`prompt type (${m}) is not defined`);if(u[f.name]!==void 0&&(d=await g(f,u[f.name]),d!==void 0)){l[y]=d;continue}try{d=s._injected?i(s._injected,f.initial):await e[m](f),l[y]=d=await g(f,d,!0),p=await a(f,d,l);}catch{p=!await h(f,l);}if(p)return l}return l}function i(c,a){let h=c.shift();if(h instanceof Error)throw h;return h===void 0?a:h}function n(c){s._injected=(s._injected||[]).concat(c);}function o(c){s._override=Object.assign({},c);}return Xr=Object.assign(s,{prompt:s,prompts:e,inject:n,override:o}),Xr}var Qr,Wn;function Lu(){return Wn||(Wn=1,Qr=Mu()),Qr}var Fu=Lu(),Du=ns(Fu),as=globalThis.window?.document!==void 0;globalThis.process?.versions?.node;globalThis.process?.versions?.bun;globalThis.Deno?.version?.deno;globalThis.process?.versions?.electron;globalThis.navigator?.userAgent?.includes("jsdom");typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;typeof DedicatedWorkerGlobalScope<"u"&&globalThis instanceof DedicatedWorkerGlobalScope;typeof SharedWorkerGlobalScope<"u"&&globalThis instanceof SharedWorkerGlobalScope;typeof ServiceWorkerGlobalScope<"u"&&globalThis instanceof ServiceWorkerGlobalScope;var Ut=globalThis.navigator?.userAgentData?.platform;Ut==="macOS"||globalThis.navigator?.platform==="MacIntel"||globalThis.navigator?.userAgent?.includes(" Mac ")===true||globalThis.process?.platform;Ut==="Windows"||globalThis.navigator?.platform==="Win32"||globalThis.process?.platform;Ut==="Linux"||globalThis.navigator?.platform?.startsWith("Linux")===true||globalThis.navigator?.userAgent?.includes(" Linux ")===true||globalThis.process?.platform;Ut==="Android"||globalThis.navigator?.platform==="Android"||globalThis.navigator?.userAgent?.includes(" Android ")===true||globalThis.process?.platform;var Hn="\x1B]",zn="\x07",Gt=";";!as&&Z.env.TERM_PROGRAM;!as&&Z.platform;as||Z.cwd;var Wu=(e,t)=>[Hn,"8",Gt,Gt,t,zn,e,Hn,"8",Gt,Gt,zn].join(""),es,Vn;function to(){return Vn||(Vn=1,es=(e,t=process.argv)=>{let r=e.startsWith("-")?"":e.length===1?"-":"--",s=t.indexOf(r+e),i=t.indexOf("--");return s!==-1&&(i===-1||s<i)}),es}var ts,Gn;function Hu(){if(Gn)return ts;Gn=1;let e=ou,t=au,r=to(),{env:s}=process,i;r("no-color")||r("no-colors")||r("color=false")||r("color=never")?i=0:(r("color")||r("colors")||r("color=true")||r("color=always"))&&(i=1),"FORCE_COLOR"in s&&(s.FORCE_COLOR==="true"?i=1:s.FORCE_COLOR==="false"?i=0:i=s.FORCE_COLOR.length===0?1:Math.min(parseInt(s.FORCE_COLOR,10),3));function n(a){return a===0?false:{level:a,hasBasic:true,has256:a>=2,has16m:a>=3}}function o(a,h){if(i===0)return 0;if(r("color=16m")||r("color=full")||r("color=truecolor"))return 3;if(r("color=256"))return 2;if(a&&!h&&i===void 0)return 0;let l=i||0;if(s.TERM==="dumb")return l;if(process.platform==="win32"){let u=e.release().split(".");return Number(u[0])>=10&&Number(u[2])>=10586?Number(u[2])>=14931?3:2:1}if("CI"in s)return ["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(u=>u in s)||s.CI_NAME==="codeship"?1:l;if("TEAMCITY_VERSION"in s)return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(s.TEAMCITY_VERSION)?1:0;if(s.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in s){let u=parseInt((s.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(s.TERM_PROGRAM){case "iTerm.app":return u>=3?3:2;case "Apple_Terminal":return 2}}return /-256(color)?$/i.test(s.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(s.TERM)||"COLORTERM"in s?1:l}function c(a){let h=o(a,a&&a.isTTY);return n(h)}return ts={supportsColor:c,stdout:n(o(true,t.isatty(1))),stderr:n(o(true,t.isatty(2)))},ts}var rs,Un;function zu(){if(Un)return rs;Un=1;let e=Hu(),t=to();function r(i){if(/^\d{3,4}$/.test(i)){let o=/(\d{1,2})(\d{2})/.exec(i)||[];return {major:0,minor:parseInt(o[1],10),patch:parseInt(o[2],10)}}let n=(i||"").split(".").map(o=>parseInt(o,10));return {major:n[0],minor:n[1],patch:n[2]}}function s(i){let{CI:n,FORCE_HYPERLINK:o,NETLIFY:c,TEAMCITY_VERSION:a,TERM_PROGRAM:h,TERM_PROGRAM_VERSION:l,VTE_VERSION:u,TERM:d}=process.env;if(o)return !(o.length>0&&parseInt(o,10)===0);if(t("no-hyperlink")||t("no-hyperlinks")||t("hyperlink=false")||t("hyperlink=never"))return false;if(t("hyperlink=true")||t("hyperlink=always")||c)return true;if(!e.supportsColor(i)||i&&!i.isTTY)return false;if("WT_SESSION"in process.env)return true;if(process.platform==="win32"||n||a)return false;if(h){let f=r(l||"");switch(h){case "iTerm.app":return f.major===3?f.minor>=1:f.major>3;case "WezTerm":return f.major>=20200620;case "vscode":return f.major>1||f.major===1&&f.minor>=72;case "ghostty":return true}}if(u){if(u==="0.50.0")return false;let f=r(u);return f.major>0||f.minor>=50}switch(d){case "alacritty":return true}return false}return rs={supportsHyperlink:s,stdout:s(process.stdout),stderr:s(process.stderr)},rs}var Vu=zu(),cs=ns(Vu);function nt(e,t,{target:r="stdout",...s}={}){return cs[r]?Wu(e,t):s.fallback===false?e:typeof s.fallback=="function"?s.fallback(e,t):`${e} (\u200B${t}\u200B)`}nt.isSupported=cs.stdout;nt.stderr=(e,t,r={})=>nt(e,t,{target:"stderr",...r});nt.stderr.isSupported=cs.stderr;var q={},Ce={},Kn;function Gu(){if(Kn)return Ce;Kn=1,Object.defineProperty(Ce,"__esModule",{value:true}),Ce.sync=Ce.isexe=void 0;let e=Zn,t=Qi__default,r=async(o,c={})=>{let{ignoreErrors:a=false}=c;try{return i(await(0,t.stat)(o),c)}catch(h){let l=h;if(a||l.code==="EACCES")return false;throw l}};Ce.isexe=r;let s=(o,c={})=>{let{ignoreErrors:a=false}=c;try{return i((0,e.statSync)(o),c)}catch(h){let l=h;if(a||l.code==="EACCES")return false;throw l}};Ce.sync=s;let i=(o,c)=>o.isFile()&&n(o,c),n=(o,c)=>{let a=c.uid??process.getuid?.(),h=c.groups??process.getgroups?.()??[],l=c.gid??process.getgid?.()??h[0];if(a===void 0||l===void 0)throw new Error("cannot get uid or gid");let u=new Set([l,...h]),d=o.mode,f=o.uid,p=o.gid,y=parseInt("100",8),m=parseInt("010",8),x=parseInt("001",8),g=y|m;return !!(d&x||d&m&&u.has(p)||d&y&&f===a||d&g&&a===0)};return Ce}var $e={},qn;function Uu(){if(qn)return $e;qn=1,Object.defineProperty($e,"__esModule",{value:true}),$e.sync=$e.isexe=void 0;let e=Zn,t=Qi__default,r=async(o,c={})=>{let{ignoreErrors:a=false}=c;try{return n(await(0,t.stat)(o),o,c)}catch(h){let l=h;if(a||l.code==="EACCES")return false;throw l}};$e.isexe=r;let s=(o,c={})=>{let{ignoreErrors:a=false}=c;try{return n((0,e.statSync)(o),o,c)}catch(h){let l=h;if(a||l.code==="EACCES")return false;throw l}};$e.sync=s;let i=(o,c)=>{let{pathExt:a=process.env.PATHEXT||""}=c,h=a.split(";");if(h.indexOf("")!==-1)return true;for(let l=0;l<h.length;l++){let u=h[l].toLowerCase(),d=o.substring(o.length-u.length).toLowerCase();if(u&&d===u)return true}return false},n=(o,c,a)=>o.isFile()&&i(c,a);return $e}var ss={},Bn;function Ku(){return Bn||(Bn=1,Object.defineProperty(ss,"__esModule",{value:true})),ss}var Jn;function qu(){return Jn||(Jn=1,function(e){var t=q&&q.__createBinding||(Object.create?function(h,l,u,d){d===void 0&&(d=u);var f=Object.getOwnPropertyDescriptor(l,u);(!f||("get"in f?!l.__esModule:f.writable||f.configurable))&&(f={enumerable:true,get:function(){return l[u]}}),Object.defineProperty(h,d,f);}:function(h,l,u,d){d===void 0&&(d=u),h[d]=l[u];}),r=q&&q.__setModuleDefault||(Object.create?function(h,l){Object.defineProperty(h,"default",{enumerable:true,value:l});}:function(h,l){h.default=l;}),s=q&&q.__importStar||function(h){if(h&&h.__esModule)return h;var l={};if(h!=null)for(var u in h)u!=="default"&&Object.prototype.hasOwnProperty.call(h,u)&&t(l,h,u);return r(l,h),l},i=q&&q.__exportStar||function(h,l){for(var u in h)u!=="default"&&!Object.prototype.hasOwnProperty.call(l,u)&&t(l,h,u);};Object.defineProperty(e,"__esModule",{value:true}),e.sync=e.isexe=e.posix=e.win32=void 0;let n=s(Gu());e.posix=n;let o=s(Uu());e.win32=o,i(Ku(),e);let a=(process.env._ISEXE_TEST_PLATFORM_||process.platform)==="win32"?o:n;e.isexe=a.isexe,e.sync=a.sync;}(q)),q}var is,Yn;function Bu(){if(Yn)return is;Yn=1;let{isexe:e,sync:t}=qu(),{join:r,delimiter:s,sep:i,posix:n}=R__default,o=process.platform==="win32",c=new RegExp(`[${n.sep}${i===n.sep?"":i}]`.replace(/(\\)/g,"\\$1")),a=new RegExp(`^\\.${c.source}`),h=p=>Object.assign(new Error(`not found: ${p}`),{code:"ENOENT"}),l=(p,{path:y=process.env.PATH,pathExt:m=process.env.PATHEXT,delimiter:x=s})=>{let g=p.match(c)?[""]:[...o?[process.cwd()]:[],...(y||"").split(x)];if(o){let w=m||[".EXE",".CMD",".BAT",".COM"].join(x),v=w.split(x).flatMap(b=>[b,b.toLowerCase()]);return p.includes(".")&&v[0]!==""&&v.unshift(""),{pathEnv:g,pathExt:v,pathExtExe:w}}return {pathEnv:g,pathExt:[""]}},u=(p,y)=>{let m=/^".*"$/.test(p)?p.slice(1,-1):p;return (!m&&a.test(y)?y.slice(0,2):"")+r(m,y)},d=async(p,y={})=>{let{pathEnv:m,pathExt:x,pathExtExe:g}=l(p,y),w=[];for(let v of m){let b=u(v,p);for(let E of x){let P=b+E;if(await e(P,{pathExt:g,ignoreErrors:true})){if(!y.all)return P;w.push(P);}}}if(y.all&&w.length)return w;if(y.nothrow)return null;throw h(p)},f=(p,y={})=>{let{pathEnv:m,pathExt:x,pathExtExe:g}=l(p,y),w=[];for(let v of m){let b=u(v,p);for(let E of x){let P=b+E;if(t(P,{pathExt:g,ignoreErrors:true})){if(!y.all)return P;w.push(P);}}}if(y.all&&w.length)return w;if(y.nothrow)return null;throw h(p)};return is=d,d.sync=f,is}var Ju=Bu(),Yu=ns(Ju);join(ou.tmpdir(),"antfu-ni");function ro(e){return Yu.sync(e,{nothrow:true})!==null}async function ls({autoInstall:e,programmatic:t,cwd:r}={}){let{name:s,agent:i,version:n}=await gr({cwd:r,onUnknown:o=>{t||console.warn("[ni] Unknown packageManager:",o);}})||{};if(s&&!ro(s)&&!t){if(!e){console.warn(`[ni] Detected ${s} but it doesn't seem to be installed.
|
|
94
|
+
`),Z.env.CI&&Z.exit(1);let o=nt(s,Zi[s]),{tryInstall:c}=await Du({name:"tryInstall",type:"confirm",message:`Would you like to globally install ${o}?`});c||Z.exit(1);}await yr("npm",["i","-g",`${s}${n?`@${n}`:""}`],{nodeOptions:{stdio:"inherit",cwd:r},throwOnError:true});}return i}Z.env.NI_CONFIG_FILE;var Xu=Z.platform==="win32"?Z.env.USERPROFILE:Z.env.HOME;R__default.join(Xu||"~/",".nirc");async function Qu(e,{withFallback:t}={withFallback:false}){let r=await ls({programmatic:true,cwd:e});return r==="yarn@berry"?"yarn":r==="pnpm@6"?"pnpm":r==="bun"?"bun":r==="deno"?"deno":t?us()??"npm":r??"npm"}function us(e=process.env.npm_config_user_agent||""){return e.startsWith("yarn")?"yarn":e.startsWith("pnpm")?"pnpm":e.startsWith("bun")?"bun":e.startsWith("deno")?"deno":e.startsWith("npm")?"npm":null}function hs(e){return e==="pnpm"?"pnpm dlx":e==="bun"?"bunx":"npx"}async function zy(e){let t=await Qu(e);return hs(t)}var so={name:"shadcn",version:"4.11.1",description:"Add components to your apps.",publishConfig:{access:"public"},license:"MIT",author:{name:"shadcn",url:"https://twitter.com/shadcn"},repository:{type:"git",url:"https://github.com/shadcn-ui/ui.git",directory:"packages/shadcn"},files:["dist"],keywords:["components","ui","tailwind","radix-ui","base-ui","shadcn"],type:"module",exports:{".":{types:"./dist/index.d.ts",default:"./dist/index.js"},"./registry":{types:"./dist/registry/index.d.ts",default:"./dist/registry/index.js"},"./schema":{types:"./dist/schema/index.d.ts",default:"./dist/schema/index.js"},"./mcp":{types:"./dist/mcp/index.d.ts",default:"./dist/mcp/index.js"},"./utils":{types:"./dist/utils/index.d.ts",default:"./dist/utils/index.js"},"./icons":{types:"./dist/icons/index.d.ts",default:"./dist/icons/index.js"},"./preset":{types:"./dist/preset/index.d.ts",default:"./dist/preset/index.js"},"./tailwind.css":{style:"./dist/tailwind.css"}},bin:"./dist/index.js",engines:{node:">=20.18.1"},scripts:{dev:"tsup --watch",build:"tsup",typecheck:"tsc --noEmit",clean:"rimraf dist && rimraf components","start:dev":"cross-env REGISTRY_URL=http://localhost:4000/r SHADCN_TEMPLATE_DIR=../../templates node dist/index.js","start:prod":"cross-env REGISTRY_URL=https://ui.shadcn.com/r node dist/index.js",start:"node dist/index.js","format:write":'prettier --write "**/*.{ts,tsx,mdx}" --cache',"format:check":'prettier --check "**/*.{ts,tsx,mdx}" --cache',release:"changeset version","pub:beta":"pnpm build && pnpm publish --no-git-checks --access public --tag beta","pub:rc":"pnpm build && pnpm publish --no-git-checks --access public --tag rc","pub:next":"pnpm build && pnpm publish --no-git-checks --access public --tag next","pub:release":"pnpm build && pnpm publish --access public",test:"vitest run","test:dev":"REGISTRY_URL=http://localhost:4000/r SHADCN_TEMPLATE_DIR=../../templates vitest run","mcp:inspect":"pnpm dlx @modelcontextprotocol/inspector node dist/index.js mcp"},dependencies:{"@babel/core":"^7.28.0","@babel/parser":"^7.28.0","@babel/plugin-transform-typescript":"^7.28.0","@babel/preset-typescript":"^7.27.1","@dotenvx/dotenvx":"^1.48.4","@modelcontextprotocol/sdk":"^1.26.0","@types/validate-npm-package-name":"^4.0.2",browserslist:"^4.26.2",commander:"^14.0.0",cosmiconfig:"^9.0.0",dedent:"^1.6.0",deepmerge:"^4.3.1",diff:"^8.0.2",execa:"^9.6.0","fast-glob":"^3.3.3","fs-extra":"^11.3.1",fuzzysort:"^3.1.0",kleur:"^4.1.5",open:"^11.0.0",ora:"^8.2.0",postcss:"^8.5.6","postcss-selector-parser":"^7.1.0",prompts:"^2.4.2",recast:"^0.23.11","stringify-object":"^5.0.0","tailwind-merge":"^3.0.1","ts-morph":"^26.0.0","tsconfig-paths":"^4.2.0",undici:"^7.27.2","validate-npm-package-name":"^7.0.1",zod:"^3.24.1","zod-to-json-schema":"^3.24.6"},devDependencies:{"@antfu/ni":"^25.0.0","@types/babel__core":"^7.20.5","@types/fs-extra":"^11.0.4","@types/prompts":"^2.4.9","@types/stringify-object":"^4.0.5",rimraf:"^6.0.1",tsup:"^8.5.0","type-fest":"^4.41.0",typescript:"^5.9.2",msw:"^2.10.4"}};function Fe(e){if(S.break(),S.error("Something went wrong. Please check the error below for more details."),S.error("If the problem persists, please open an issue on GitHub."),S.error(""),typeof e=="string"&&(S.error(e),ot()),e instanceof j&&(e.message&&(S.error(e.cause?"Error:":"Message:"),S.error(e.message)),e.cause&&(S.error(`
|
|
95
95
|
Message:`),S.error(e.cause)),e.suggestion&&(S.error(`
|
|
96
|
-
Suggestion:`),S.error(e.suggestion)),ot()),e instanceof z$1.ZodError){S.error("Validation failed:");for(let[t,r]of Object.entries(e.flatten().fieldErrors))S.error(`- ${T.info(t)}: ${r}`);ot();}e instanceof Error&&(S.error(e.message),ot()),ot();}function
|
|
97
|
-
`),Fe(e);}}async function
|
|
98
|
-
`),Fe(e),[]}}async function
|
|
99
|
-
`)),r.hasMore&&(S.break(),S.log(`More items available. Use ${T.info(`--offset ${r.offset+r.limit}`)} to see the next page.`));}var
|
|
96
|
+
Suggestion:`),S.error(e.suggestion)),ot()),e instanceof z$1.ZodError){S.error("Validation failed:");for(let[t,r]of Object.entries(e.flatten().fieldErrors))S.error(`- ${T.info(t)}: ${r}`);ot();}e instanceof Error&&(S.error(e.message),ot()),ot();}function rh(e){let t=e.match(/^(\d+)\.(\d+)\.\d+/);if(!t)return null;let r=Number.parseInt(t[1],10),s=Number.parseInt(t[2],10);return s===0?null:`${r}.${s-1}.0`}function sh(e=so.version,t=process.argv.slice(2)){let r=rh(e);return r?[...hs(us()).split(" "),`shadcn@${r}`,...t].map(ih).join(" "):null}function ot(){let e=sh();e&&(S.error(""),S.error("You can also try a previous version to see if that works:"),S.error(e)),S.break(),process.exit(1);}function ih(e){return /^[a-zA-Z0-9_./:@%+=,-]+$/.test(e)?e:`'${e.replace(/'/g,"'\\''")}'`}async function fs(e,t){let{config:r,useCache:s}=t||{};if(_(e)){let[a]=await L([e],{useCache:s});return io(e,a)}let i=Xe(e);if(i)return zi(i,{useCache:s});if(!e.startsWith("@"))throw new Ge(e);let n=e;n.endsWith("/registry")||(n=`${n}/registry`);let o=je(n,Oe(r));if(!o?.url)throw new ve(n);o.headers&&Object.keys(o.headers).length>0&&tt({[o.url]:o.headers});let[c]=await L([o.url],{useCache:s});return io(n,c)}function io(e,t){try{let r=p.parse(t);if(r.include?.length)throw new C(`Registry catalog "${e}" uses "include", but consumer registry endpoints must serve a resolved registry catalog. Run "npx shadcn build" and serve the built registry.json, or use loadRegistry() in a dynamic route.`,{context:{registry:e,include:r.include},suggestion:"Serve a flattened registry.json for CLI consumers. Source registry.json files with include are supported by shadcn build and loadRegistry()."});return r}catch(r){throw r instanceof C?r:new M(e,r,{subject:"registry catalog",suggestion:"The registry catalog may be corrupted or have an invalid format. Please make sure it returns a valid registry.json object. See https://ui.shadcn.com/schema/registry.json."})}}async function oh(e,t){let{config:r,useCache:s=false}=t||{};return Ie(),me(e,Oe(r),{useCache:s})}async function ah(e,t){let{config:r,useCache:s=false}=t||{};return Ie(),Yi(e,Oe(r),{useCache:s})}async function gw(e,t){let{useCache:r=true}=t||{};r||Et.clearCaches();let s=await Et.search(e);if(!s)return {registries:D};let i=z$1.object({registries:b$1.optional()}).safeParse(s.config);if(!i.success)throw new gt(e,i.error);return {registries:{...D,...i.data.registries||{}}}}async function St(){try{let[e]=await L(["index.json"]);return q$1.parse(e)}catch(e){S.error(`
|
|
97
|
+
`),Fe(e);}}async function yw(){try{let[e]=await L(["styles/index.json"]);return r.parse(e)}catch(e){return S.error(`
|
|
98
|
+
`),Fe(e),[]}}async function ww(){try{let[e]=await L(["icons/index.json"]);return s.parse(e)}catch(e){return Fe(e),{}}}async function xw(){return Os}async function Lt(e){try{let[t$1]=await L([`colors/${e}.json`]);return t.parse(t$1)}catch(t){Fe(t);}}async function ch(e,t){let r=[];for(let s of t){let i=e.find(n=>n.name===s);if(i&&(r.push(i),i.registryDependencies)){let n=await ch(e,i.registryDependencies);r.push(...n);}}return r.filter((s,i,n)=>n.findIndex(o=>o.name===s.name)===i)}async function vw(e,t){try{let r=t.map(i=>`styles/${e}/${i.name}.json`);return (await L(r)).map(i=>n.parse(i))}catch(r){return Fe(r),[]}}async function bw(e,t,r){if(r)return r;if(t.type==="registry:ui")return e.resolvedPaths.ui??e.resolvedPaths.components;let[s,i]=t.type?.split(":")??[];return s in e.resolvedPaths?R__default.join(e.resolvedPaths[s],i):null}async function oo(e){e={useCache:true,...e};let t=`${xe}/registries.json`,[r]=await L([t],{useCache:e.useCache});try{return z$2.parse(r)}catch(s){throw s instanceof z$1.ZodError?new Ue(s):s}}async function lh(e){let t=await oo(e);return t?Object.fromEntries(t.map(r=>[r.name,r.url])):null}async function uh(e){e={useCache:true,...e};let t=`${xe}/config.json`,[r]=await L([t],{useCache:e.useCache});return B$1.parse(r).presets}async function Rw(e,t){return (await uh(t)).find(s=>s.name.toLowerCase()===e.toLowerCase())??null}function Nw(e,t){return e.length>0?e:Object.keys(t?.registries??{}).filter(r=>!(r in D))}var fh=8;async function dh(e,t,r){let s=new Array(e.length),i=0;async function n(){for(;i<e.length;){let c=i++;try{s[c]={status:"fulfilled",value:await r(e[c])};}catch(a){s[c]={status:"rejected",reason:a};}}}let o=Array.from({length:Math.min(t,e.length)},()=>n());return await Promise.all(o),s}async function ph(e,t){let{query:r,types:s,limit:i,offset:n,config:o,useCache:c=false,continueOnError:a}=t||{};Ie();let h=[],l=[],u=await dh(e,fh,m=>fs(m,{config:o,useCache:c}));for(let m=0;m<e.length;m++){let x=e[m],g=u[m];if(g.status==="rejected"){if(!a)throw g.reason;l.push({registry:x,message:g.reason instanceof Error?g.reason.message:String(g.reason)});continue}let w=(g.value.items||[]).map(v=>({name:v.name,type:v.type,description:v.description,registry:x,addCommandArgument:wh(v.name,x)}));h=h.concat(w);}if(s?.length){let m=new Set(s.map(x=>De(x).toLowerCase()));h=h.filter(x=>x.type&&m.has(De(x.type).toLowerCase()));}r&&(h=gh(h,{query:r,limit:h.length,keys:["name","description"]}));let d=n||0,f=i||h.length,p=h.length,y={pagination:{total:p,offset:d,limit:f,hasMore:d+f<p},items:h.slice(d,d+f),...l.length>0?{errors:l}:{}};return x.parse(y)}var mh=z$1.object({name:z$1.string(),type:z$1.string().optional(),description:z$1.string().optional(),registry:z$1.string().optional(),addCommandArgument:z$1.string().optional()}).passthrough();function gh(e,t){t={limit:100,threshold:-1e4,...t};let s=hh.go(t.query,e,{keys:t.keys,threshold:t.threshold,limit:t.limit}).map(i=>i.obj);return z$1.array(mh).parse(s)}function yh(e){try{return new URL(e),!0}catch{return false}}function wh(e,t){let r=Xe(t);if(r){let f=`${r.owner}/${r.repo}/${e}`;return r.ref?`${f}#${r.ref}`:f}if(!yh(t))return `${t}/${e}`;let s=t.indexOf("://")+3,i=t.indexOf("/",s);if(i===-1){let f=t.indexOf("?",s);if(f!==-1){let p=t.substring(0,f),m=t.substring(f).replace(/\bregistry\b/g,e);return p+m}return t}let n=t.substring(0,i),o=t.substring(i),c=o.indexOf("?")!==-1?o.indexOf("?"):o.length,a=o.substring(0,c),h=o.substring(c),l=a.lastIndexOf("registry"),u=a;l!==-1&&(u=a.substring(0,l)+e+a.substring(l+8));let d=h.replace(/\bregistry\b/g,e);return n+u+d}var xh=80;function De(e){return e?e.startsWith("registry:")?e.slice(9):e:""}var vh=["registry:example","registry:internal"],bh=f.options.filter(e=>!vh.includes(e)).map(e=>De(e));function Mw(e){let t=new Set(bh.map(r=>r.toLowerCase()));return e.filter(r=>!t.has(De(r).toLowerCase()))}function Rh(e,t=xh){let r=e.trim().replace(/\s+/g," ");if(r.length<=t)return r;let s=r.slice(0,t-3).trimEnd(),i=s.lastIndexOf(" ");return `${(i>t*.6?s.slice(0,i):s).trimEnd()}...`}function Eh(e,t){let r=e.addCommandArgument??e.name,s=De(e.type),i=s?` (${s})`:"",n=t.showRegistry&&e.registry?` \xB7 ${e.registry}`:"",o=e.description?` \u2014 ${Rh(e.description)}`:"";return `- ${T.info(r)}${i}${n}${o}`}function ao(e){let{query:t,types:r,registries:s}=e,i="";return r?.length&&(i+=` of type ${r.map(n=>De(n)).join(", ")}`),t&&(i+=` matching ${T.info(`"${t}"`)}`),s.length>0&&(i+=` in ${s.join(", ")}`),i}function Lw(e,t){let{pagination:r,items:s,errors:i}=e,n=t.registries.length>1;if(i?.length){for(let{registry:h,message:l}of i)S.warn(`Skipped ${h}: ${l}`);S.break();}if(s.length===0){S.warn(`No items found${ao(t)}.`);return}let o=`${r.total} item${r.total===1?"":"s"}`;S.info(`Found ${o}${ao(t)}`);let c=r.offset+1,a=Math.min(r.offset+r.limit,r.total);S.log(`Showing ${c}-${a} of ${r.total}`),S.break(),S.log(s.map(h=>Eh(h,{showRegistry:n})).join(`
|
|
99
|
+
`)),r.hasMore&&(S.break(),S.log(`More items available. Use ${T.info(`--offset ${r.offset+r.limit}`)} to see the next page.`));}var ds=32;async function Ih(e){let{cwd:t,registryFile:r}=yo(e),s=await lo(r,{cwd:t}),i=wo(s,t,r);return Ch(s,i,t)}async function Sh(e,t){let{cwd:r,registryFile:s}=yo(t),i=await lo(s,{cwd:r}),n=i.registry.items.find(c=>c.name===e);if(!n)throw new be(e);let o=wo(i,r,s);return $h(n,i,o,r)}async function lo(e,t){let r=R.resolve(t.cwd,e),s=await po(r),i=mo(s,r);co(i,r);let n={cwd:R.resolve(t.cwd),itemSources:new Map,itemSourcesByItem:new Map,firstIncludedFrom:new Map},o=!!i.include?.length;if(!o)return i.items.forEach((l,u)=>{let d={registryFile:r,registryDir:n.cwd,itemIndex:u};n.itemSources.set(l.name,d),n.itemSourcesByItem.set(l,d);}),{registry:i,itemSources:n.itemSources,itemSourcesByItem:n.itemSourcesByItem,usesInclude:o};if(R.basename(r)!=="registry.json")throw new C(`Invalid registry file at ${r}: registries that use include must be named registry.json.`,{registryFile:r});let c=await fo(r,i,n,[]);jh(c.items,n.itemSourcesByItem);let{include:a,...h}=c;return co(h,r),{registry:h,itemSources:n.itemSources,itemSourcesByItem:n.itemSourcesByItem,usesInclude:o}}function Ch(e,t,r){return {...e.registry,items:e.registry.items.map(s=>Th(uo(s,e.itemSourcesByItem,t,r)))}}async function $h(e,t,r,s){let i={...uo(e,t.itemSourcesByItem,r,s),$schema:"https://ui.shadcn.com/schema/registry-item.json"};return await Promise.all((e.files??[]).map(async(n,o)=>{let c=i.files?.[o];if(!c)return;let a=t.itemSourcesByItem.get(e),h=ho(e,n.path,t.itemSourcesByItem,s);c.content=await kh(e.name,n.path,h,a);})),n.parse(i)}async function kh(e,t,r,s){try{return await Qi.readFile(r,"utf-8")}catch(i){throw new ee(r,i,{message:`Failed to read file "${t}" for registry item "${e}" (${at(s)}). Expected file at ${r}.`,context:{itemName:e,itemFilePath:t,sourcePath:r},suggestion:"Make sure the file path is relative to the registry.json file that declares the item."})}}function uo(e,t,r,s){return {...e,files:e.files?.map(i=>({...i,path:Ph(e,i.path,t,r,s)}))}}function Th(e){return {...e,files:e.files?.map(({content:t,...r})=>r)}}function ho(e,t,r,s){let i=r.get(e);return R.resolve(i?.registryDir??s,t)}function Ph(e,t,r,s,i){let n=ho(e,t,r,i);return R.relative(s,n).split(R.sep).join("/")}async function fo(e,t,r,s){if(go(e,r.cwd),s.length>=ds)throw new C(`Registry include tree is too deep at ${e}. The maximum include depth is ${ds}.`,{registryFile:e,context:{maxDepth:ds},suggestion:"Flatten part of the registry include tree or reduce nested include depth."});if(s.includes(e))throw new C(_h([...s,e]),{registryFile:e});let i=s.at(-1)??e,n=r.firstIncludedFrom.get(e);if(n)throw new C(`Registry file included more than once: ${e}.
|
|
100
100
|
- first included from ${n}
|
|
101
101
|
- included again from ${i}
|
|
102
|
-
Each registry.json file can only appear once in the resolved include tree. Remove one include or move shared items into a single included registry.json.`,{registryFile:e,context:{firstSource:n,secondSource:i}});r.firstIncludedFrom.set(e,i);let o=[...s,e],c=R.dirname(e),a=[];for(let h of t.include??[]){let l=
|
|
103
|
-
${
|
|
102
|
+
Each registry.json file can only appear once in the resolved include tree. Remove one include or move shared items into a single included registry.json.`,{registryFile:e,context:{firstSource:n,secondSource:i}});r.firstIncludedFrom.set(e,i);let o=[...s,e],c=R.dirname(e),a=[];for(let h of t.include??[]){let l=Ah(h,c,r.cwd,e),u=await po(l),d=mo(u,l),f=await fo(l,d,r,o);a.push(...f.items);}return t.items.forEach((h,l)=>{Oh(h,e,c),r.itemSources.set(h.name,{registryFile:e,registryDir:c,itemIndex:l}),r.itemSourcesByItem.set(h,{registryFile:e,registryDir:c,itemIndex:l});}),{...t,items:[...a,...t.items]}}async function po(e){try{return await Qi.readFile(e,"utf-8")}catch(t){throw new ee(e,t,{message:`Failed to read registry file at ${e}.`,context:{registryFile:e},suggestion:"Check that the registry.json file exists and that the path is correct."})}}function mo(e,t){let r;try{r=JSON.parse(e);}catch(i){throw new M(t,i,{subject:"registry file",context:{registryFile:t},suggestion:"Fix the JSON syntax in the registry.json file and try again."})}let s=o.safeParse(r);if(!s.success)throw new C(`Invalid registry file at ${t}:
|
|
103
|
+
${Nh(s.error)}`,{registryFile:t,cause:s.error,suggestion:"Update the registry.json file so it matches the registry schema."});return s.data}function co(e,t){let r=[];if(e.name||r.push("name"),e.homepage||r.push("homepage"),r.length)throw new C(`Invalid root registry file at ${t}: root registry.json must define ${r.map(s=>`"${s}"`).join(" and ")}. Included registry.json files may omit these fields.`,{registryFile:t})}function Ah(e,t,r,s){if(_(e))throw new C(`Invalid include "${e}" in ${s}: remote includes are not supported by shadcn build. Use a relative path to a registry.json file in the same repository.`,{registryFile:s,context:{includePath:e}});if(R.isAbsolute(e))throw new C(`Invalid include "${e}" in ${s}: include paths must be relative. Use a path like "./registry/ui/registry.json".`,{registryFile:s,context:{includePath:e}});if(xo(e))throw new C(`Invalid include "${e}" in ${s}: include paths cannot use parent-directory traversal. Keep included registry.json files inside the registry root.`,{registryFile:s,context:{includePath:e}});if(R.basename(e)!=="registry.json")throw new C(`Invalid include "${e}" in ${s}: include paths must explicitly reference a registry.json file. Use a path like "./registry/ui/registry.json".`,{registryFile:s,context:{includePath:e}});let i=R.resolve(t,e);return go(i,r),i}function go(e,t){if(!vo(e,t))throw new C(`Invalid registry file at ${e}: registry includes must stay inside ${t}.`,{registryFile:e,context:{cwd:t}})}function yo(e){return {cwd:R.resolve(e?.cwd??process.cwd()),registryFile:e?.registryFile??"registry.json"}}function wo(e,t,r){return e.usesInclude?R.dirname(R.resolve(t,r)):t}function Oh(e,t,r){for(let s of e.files??[]){if(_(s.path))throw new C(`Invalid file path "${s.path}" for item "${e.name}" in ${t}: remote file paths are not supported by shadcn build.`,{registryFile:t,context:{itemName:e.name,filePath:s.path}});if(R.isAbsolute(s.path))throw new C(`Invalid file path "${s.path}" for item "${e.name}" in ${t}: file paths must be relative.`,{registryFile:t,context:{itemName:e.name,filePath:s.path}});if(xo(s.path))throw new C(`Invalid file path "${s.path}" for item "${e.name}" in ${t}: file paths cannot use parent-directory traversal.`,{registryFile:t,context:{itemName:e.name,filePath:s.path}});let i=R.resolve(r,s.path);if(!vo(i,r))throw new C(`Invalid file path "${s.path}" for item "${e.name}" in ${t}: file paths must stay inside the registry chunk directory.`,{registryFile:t,context:{itemName:e.name,filePath:s.path}})}}function jh(e,t){let r=new Map;for(let s of e){let i=r.get(s.name);if(!i){r.set(s.name,s);continue}let n=t.get(i),o=t.get(s);throw new C(`Duplicate registry item name "${s.name}". Registry item names must be unique.
|
|
104
104
|
- ${at(n)}
|
|
105
105
|
- ${at(o)}
|
|
106
|
-
Rename one of these items so each name is unique across the resolved registry.`,{context:{itemName:s.name,firstSource:at(n),secondSource:at(o)}})}}function
|
|
106
|
+
Rename one of these items so each name is unique across the resolved registry.`,{context:{itemName:s.name,firstSource:at(n),secondSource:at(o)}})}}function xo(e){return e.split(/[\\/]+/).includes("..")}function vo(e,t){let r=R.relative(t,e);return !!r&&!r.startsWith("..")&&!R.isAbsolute(r)}function _h(e){return `Registry include cycle detected:
|
|
107
107
|
${e.map(t=>` - ${t}`).join(`
|
|
108
|
-
`)}`}function at(e){return e?`${e.registryFile} items[${e.itemIndex}]`:"unknown source"}function
|
|
109
|
-
`)}export{
|
|
108
|
+
`)}`}function at(e){return e?`${e.registryFile} items[${e.itemIndex}]`:"unknown source"}function Nh(e){return e.errors.map(t=>` - ${t.path.length?t.path.join("."):"(root)"}: ${t.message}`).join(`
|
|
109
|
+
`)}export{ea as $,Re as A,bw as Aa,Us as B,oo as Ba,Ks as C,lh as Ca,qs as D,uh as Da,Ee as E,Rw as Ea,Tt as F,re as Fa,At as G,ed as Ga,jt as H,kt as Ha,_t as I,td as Ia,Qs as J,Ih as Ja,ei as K,Sh as Ka,Rp as L,lo as La,Nt as M,Ch as Ma,Mt as N,$h as Na,Ba as O,Nw as Oa,ai as P,ph as Pa,_ as Q,bh as Qa,Lp as R,Mw as Ra,Xe as S,Lw as Sa,_f as T,Nf as U,Mf as V,Lf as W,Et as X,Ye as Y,It as Z,Ff as _,F as a,ra as aa,D as b,Df as ba,Mh as c,Ws as ca,T as d,Oe as da,S as e,Ie as ea,lf as f,im as fa,uf as g,je as ga,hf as h,Fm as ha,No as i,Xm as ia,N as j,me as ja,j as k,Yi as ka,ve as l,Qu as la,We as m,zy as ma,He as n,so as na,ze as o,Fe as oa,ae as p,fs as pa,ee as q,oh as qa,M as r,ah as ra,C as s,gw as sa,be as t,St as ta,Ve as u,yw as ua,Ge as v,ww as va,Ue as w,xw as wa,ce as x,Lt as xa,le as y,ch as ya,Vs as z,vw as za};
|