@razorwind/shadcn 0.0.82 → 0.0.84

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.
@@ -31,8 +31,8 @@ declare function getRegistryConfig(cwd: string): Promise<{
31
31
  rsc: boolean;
32
32
  tsx: boolean;
33
33
  tailwind: {
34
- css: string;
35
34
  baseColor: string;
35
+ css: string;
36
36
  cssVariables: boolean;
37
37
  config?: string | undefined;
38
38
  prefix?: string | undefined;
@@ -54,11 +54,11 @@ declare function getRegistryConfig(cwd: string): Promise<{
54
54
  tailwindConfig: string;
55
55
  tailwindCss: string;
56
56
  };
57
- $schema?: string | undefined;
58
- iconLibrary?: string | undefined;
59
- rtl?: boolean | undefined;
60
57
  menuColor?: "default" | "inverted" | "default-translucent" | "inverted-translucent" | undefined;
61
58
  menuAccent?: "subtle" | "bold" | undefined;
59
+ iconLibrary?: string | undefined;
60
+ $schema?: string | undefined;
61
+ rtl?: boolean | undefined;
62
62
  registries?: Record<string, string | {
63
63
  url: string;
64
64
  params?: Record<string, string> | undefined;
@@ -71,8 +71,8 @@ declare function resolveConfigPaths(cwd: string, config: ShadcnRawConfig): Promi
71
71
  rsc: boolean;
72
72
  tsx: boolean;
73
73
  tailwind: {
74
- css: string;
75
74
  baseColor: string;
75
+ css: string;
76
76
  cssVariables: boolean;
77
77
  config?: string | undefined;
78
78
  prefix?: string | undefined;
@@ -94,11 +94,11 @@ declare function resolveConfigPaths(cwd: string, config: ShadcnRawConfig): Promi
94
94
  tailwindConfig: string;
95
95
  tailwindCss: string;
96
96
  };
97
- $schema?: string | undefined;
98
- iconLibrary?: string | undefined;
99
- rtl?: boolean | undefined;
100
97
  menuColor?: "default" | "inverted" | "default-translucent" | "inverted-translucent" | undefined;
101
98
  menuAccent?: "subtle" | "bold" | undefined;
99
+ iconLibrary?: string | undefined;
100
+ $schema?: string | undefined;
101
+ rtl?: boolean | undefined;
102
102
  registries?: Record<string, string | {
103
103
  url: string;
104
104
  params?: Record<string, string> | undefined;
@@ -165,4 +165,4 @@ declare function extractComponentsFromRegistry(registryPath: string): Promise<Co
165
165
  declare const _default: (options?: ShadcnExtractPluginOptions | undefined) => import("@razorwind/core/plugin").Plugin;
166
166
  //#endregion
167
167
  export { ShadcnWorkspaceConfig as S, getRegistryConfig as _, registryItemsToComponents as a, ShadcnRawConfig as b, DEFAULT_COMPONENTS as c, DEFAULT_TAILWIND_CONFIG as d, DEFAULT_TAILWIND_CSS as f, getRawConfig as g, createRegistryConfig as h, registryItemToComponent as i, DEFAULT_STYLE as l, RegistryConfig as m, extractComponentsFromRegistry as n, toDependencyRecord as o, DEFAULT_UTILS as p, extract_d_exports as r, BUILTIN_REGISTRIES as s, _default as t, DEFAULT_TAILWIND_BASE_COLOR as u, resolveConfigPaths as v, ShadcnRegistryConfig as x, ShadcnConfig as y };
168
- //# sourceMappingURL=extract-BHw0cSFv.d.mts.map
168
+ //# sourceMappingURL=extract-B1aMLBK8.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extract-B1aMLBK8.d.mts","names":[],"sources":["../src/registry/shadcn-types.ts","../src/registry/config.ts","../src/extract.ts"],"mappings":""}
@@ -31,8 +31,8 @@ declare function getRegistryConfig(cwd: string): Promise<{
31
31
  rsc: boolean;
32
32
  tsx: boolean;
33
33
  tailwind: {
34
- css: string;
35
34
  baseColor: string;
35
+ css: string;
36
36
  cssVariables: boolean;
37
37
  config?: string | undefined;
38
38
  prefix?: string | undefined;
@@ -54,11 +54,11 @@ declare function getRegistryConfig(cwd: string): Promise<{
54
54
  tailwindConfig: string;
55
55
  tailwindCss: string;
56
56
  };
57
- $schema?: string | undefined;
58
- iconLibrary?: string | undefined;
59
- rtl?: boolean | undefined;
60
57
  menuColor?: "default" | "inverted" | "default-translucent" | "inverted-translucent" | undefined;
61
58
  menuAccent?: "subtle" | "bold" | undefined;
59
+ iconLibrary?: string | undefined;
60
+ $schema?: string | undefined;
61
+ rtl?: boolean | undefined;
62
62
  registries?: Record<string, string | {
63
63
  url: string;
64
64
  params?: Record<string, string> | undefined;
@@ -71,8 +71,8 @@ declare function resolveConfigPaths(cwd: string, config: ShadcnRawConfig): Promi
71
71
  rsc: boolean;
72
72
  tsx: boolean;
73
73
  tailwind: {
74
- css: string;
75
74
  baseColor: string;
75
+ css: string;
76
76
  cssVariables: boolean;
77
77
  config?: string | undefined;
78
78
  prefix?: string | undefined;
@@ -94,11 +94,11 @@ declare function resolveConfigPaths(cwd: string, config: ShadcnRawConfig): Promi
94
94
  tailwindConfig: string;
95
95
  tailwindCss: string;
96
96
  };
97
- $schema?: string | undefined;
98
- iconLibrary?: string | undefined;
99
- rtl?: boolean | undefined;
100
97
  menuColor?: "default" | "inverted" | "default-translucent" | "inverted-translucent" | undefined;
101
98
  menuAccent?: "subtle" | "bold" | undefined;
99
+ iconLibrary?: string | undefined;
100
+ $schema?: string | undefined;
101
+ rtl?: boolean | undefined;
102
102
  registries?: Record<string, string | {
103
103
  url: string;
104
104
  params?: Record<string, string> | undefined;
@@ -165,4 +165,4 @@ declare function extractComponentsFromRegistry(registryPath: string): Promise<Co
165
165
  declare const _default: (options?: ShadcnExtractPluginOptions | undefined) => import("@razorwind/core/plugin").Plugin;
166
166
  //#endregion
167
167
  export { ShadcnWorkspaceConfig as S, getRegistryConfig as _, registryItemsToComponents as a, ShadcnRawConfig as b, DEFAULT_COMPONENTS as c, DEFAULT_TAILWIND_CONFIG as d, DEFAULT_TAILWIND_CSS as f, getRawConfig as g, createRegistryConfig as h, registryItemToComponent as i, DEFAULT_STYLE as l, RegistryConfig as m, extractComponentsFromRegistry as n, toDependencyRecord as o, DEFAULT_UTILS as p, extract_d_exports as r, BUILTIN_REGISTRIES as s, _default as t, DEFAULT_TAILWIND_BASE_COLOR as u, resolveConfigPaths as v, ShadcnRegistryConfig as x, ShadcnConfig as y };
168
- //# sourceMappingURL=extract-BOD6umnM.d.cts.map
168
+ //# sourceMappingURL=extract-BNy04DfM.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extract-BOD6umnM.d.cts","names":[],"sources":["../src/registry/shadcn-types.ts","../src/registry/config.ts","../src/extract.ts"],"mappings":";;;;;;;;;;;;KAgCK,kBAAkB,KAAK;EAC1B,WAAW,wBAAwB;IAEjC;KAGQ,eAAe,yBAAyB;KACxC,kBAAkB,yBAAyB;KAC3C,uBAAuB,yBAC1B;KAEG,wBAAwB,yBAC3B;;;cCHI;cACA;cACA;cACA;cACA;cACA;KAmCD,iBAAiB;iBAEP,kBAAkB,cAAW;;;;;;;;IAgNzB;IAItB;;;;;IAKsB;IAAkC;IAGtD;;;;;;;;;;;;;;;;;;;IAsBS,SAAC;IACH,UAAC;;;cArOD,oBAAoB;iBAIX,mBAAmB,aAAa,QAAQ,kBAAe;;;;;;;;IA8LnD;IAItB;;;;;IAKsB;IAAkC;IAGtD;;;;;;;;;;;;;;;;;;;IAsBS,SAAC;IACH,UAAC;;;iBAtFQ,aACpB,cACC,QAAQ;KA6IC,YAAY,QACrB,WAAW,KAAK,EAAE,oBAAoB,YAAY,EAAE,MAAM,EAAE;;;;;;;;iBAU/C,qBACd,UAAU,YAAY,kBACrB;;;;UCtUO;EACR;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;;;iBAOc,mBACd,6BACC;;;;iBAgGa,wBAAwB,MAAM,mBAAmB;;;;iBA2BjD,0BACd,OAAO,iCACN;;;;;;iBAqCmB,8BACpB,uBACC,QAAQ"}
1
+ {"version":3,"file":"extract-BNy04DfM.d.cts","names":[],"sources":["../src/registry/shadcn-types.ts","../src/registry/config.ts","../src/extract.ts"],"mappings":";;;;;;;;;;;;KAgCK,kBAAkB,KAAK;EAC1B,WAAW,wBAAwB;IAEjC;KAGQ,eAAe,yBAAyB;KACxC,kBAAkB,yBAAyB;KAC3C,uBAAuB,yBAC1B;KAEG,wBAAwB,yBAC3B;;;cCHI;cACA;cACA;cACA;cACA;cACA;KAmCD,iBAAiB;iBAEP,kBAAkB,cAAW;;;;;;;;IAgNzB;IAItB;;;;;IAKsB;IAAkC;IAGtD;;;;;;;;;;;;;;;;;;;IAsBS,SAAC;IACH,UAAC;;;cArOD,oBAAoB;iBAIX,mBAAmB,aAAa,QAAQ,kBAAe;;;;;;;;IA8LnD;IAItB;;;;;IAKsB;IAAkC;IAGtD;;;;;;;;;;;;;;;;;;;IAsBS,SAAC;IACH,UAAC;;;iBAtFQ,aACpB,cACC,QAAQ;KA6IC,YAAY,QACrB,WAAW,KAAK,EAAE,oBAAoB,YAAY,EAAE,MAAM,EAAE;;;;;;;;iBAU/C,qBACd,UAAU,YAAY,kBACrB;;;;UCtUO;EACR;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;;;iBAOc,mBACd,6BACC;;;;iBAgGa,wBAAwB,MAAM,mBAAmB;;;;iBA2BjD,0BACd,OAAO,iCACN;;;;;;iBAqCmB,8BACpB,uBACC,QAAQ"}
@@ -1,6 +1,6 @@
1
- import{t as e}from"./rolldown-runtime-DK3Fl9T5.mjs";import{useExecution as t}from"@power-plant/core";import{definePlugin as n}from"@razorwind/core/plugin";import{joinPaths as r}from"@stryke/path/join";import{existsSync as i,statSync as a}from"node:fs";import o,{basename as s,dirname as c}from"node:path";import{loadRegistry as l}from"shadcn/registry";import{loadTsConfig as u}from"@stryke/fs/tsconfig";import{loadConfig as d}from"c12";import f from"chalk";import ee from"fast-glob";import{configSchema as p,rawConfigSchema as m}from"shadcn/schema";import"shadcn/preset";import{readJsonFile as h}from"@stryke/fs/json";import{readFile as g}from"@stryke/fs/read-file";import{z as _}from"zod";import"@stryke/http/fetch";import"@stryke/url/helpers";import{getWorkspaceRoot as v}from"@stryke/fs/get-workspace-root";import{createMatchPath as te}from"tsconfig-paths";import{isAbsolute as ne}from"@stryke/path/is-type";const y=process.env.REGISTRY_URL??`https://ui.shadcn.com/r`,b=y.replace(/\/r\/?$/,``);`${b}`,`${b}`,`${b}`,`${b}`,`${b}`,`${b}`,`${b}`,`${b}`,`${b}`,`${b}`,`${b}`;function x(e){let t=[e];for(;t.length;){let e=t.shift();if(typeof e==`string`){if(e.startsWith(`./`))return e;continue}if(Array.isArray(e)){t.unshift(...e);continue}e&&typeof e==`object`&&t.unshift(...Object.values(e))}return null}function S(e){if(!e.includes(`*`))return`strip_extension`;let t=e.slice(e.indexOf(`*`)+1);return t&&/^\.[^/]+$/.test(t)?`strip_extension`:`preserve_extension`}function C(e,t){let n=t.find(t=>!t.hasWildcard&&t.key===e);if(n)return{path:o.resolve(n.rootDir,n.target),matchedAlias:n.key,matchedTarget:n.target,emitMode:n.emitMode};let r=t.filter(e=>e.hasWildcard).sort((e,t)=>t.key.length-e.key.length);for(let t of r){let n=w(e,t.key,{allowBareAliasBase:!0});if(n!==null)return{path:o.resolve(t.rootDir,T(t.target,n)),matchedAlias:t.key,matchedTarget:t.target,emitMode:t.emitMode}}return null}function w(e,t,n={}){if(!t.includes(`*`))return e===t?``:null;let[r,i=``]=t.split(`*`);return r&&e.startsWith(r)&&e.endsWith(i)?i?e.slice(r.length,-i.length):e.slice(r.length):n.allowBareAliasBase&&i===``&&r&&r.endsWith(`/`)&&e===r.slice(0,-1)?``:null}function T(e,t){if(!e.includes(`*`))return e;let[n,r=``]=e.split(`*`);return t?n?`${n}${t}${r}`:t:n?n.replace(/\/$/,``):``}const E=/* @__PURE__ */ new Map;async function re(e){let t=o.resolve(e),n=E.get(t);if(n)return n;let r=(await D(e))?.imports;if(!r||typeof r!=`object`||Array.isArray(r))return E.set(t,[]),[];let i=[];for(let[e,n]of Object.entries(r)){if(!e.startsWith(`#`))continue;let r=x(n);r&&i.push({key:e,aliasBase:e===`#*`?`#`:e.endsWith(`/*`)?e.slice(0,-2):e,target:r,emitMode:S(r),hasWildcard:e.includes(`*`),rootDir:t})}return E.set(t,i),i}async function ie(e,t){return C(e,await re(t))}async function D(e=``){let t=o.join(e,`package.json`);return h(t)}_.object({compilerOptions:_.object({paths:_.record(_.string(),_.string().or(_.array(_.string())))})});function ae(e){if(e.startsWith(`#`)||e.startsWith(`.`)||ne(e))return null;let t=e.split(`/`);return e.startsWith(`@`)?t.length<2?null:{packageName:`${t[0]}/${t[1]}`}:{packageName:t[0]}}const O=/* @__PURE__ */ new Map,k=/* @__PURE__ */ new Map;function oe(e){let t=[],n=!1,r=0;for(let i of e.split(`
1
+ import{t as e}from"./rolldown-runtime-DK3Fl9T5.mjs";import{useExecution as t}from"@power-plant/core";import{definePlugin as n}from"@razorwind/core/plugin";import{joinPaths as r}from"@stryke/path/join";import{existsSync as i,statSync as a}from"node:fs";import o,{basename as s,dirname as c}from"node:path";import{loadRegistry as l}from"shadcn/registry";import{loadTsConfig as u}from"@stryke/fs/tsconfig";import{loadConfig as d}from"c12";import f from"chalk";import ee from"fast-glob";import{configSchema as p,rawConfigSchema as m}from"shadcn/schema";import"shadcn/preset";import{readJsonFile as h}from"@stryke/fs/json";import{readFile as g}from"@stryke/fs/read-file";import{z as _}from"zod";import"@stryke/http/fetch";import"@stryke/url/helpers";import{getWorkspaceRoot as v}from"@stryke/fs/get-workspace-root";import{createMatchPath as te}from"tsconfig-paths";import{isAbsolute as ne}from"@stryke/path/is-type";const y=process.env.REGISTRY_URL??`https://ui.shadcn.com/r`,b=y.replace(/\/r\/?$/,``);`${b}`,`${b}`,`${b}`,`${b}`,`${b}`,`${b}`,`${b}`,`${b}`,`${b}`,`${b}`,`${b}`;function x(e){let t=[e];for(;t.length;){let e=t.shift();if(typeof e==`string`){if(e.startsWith(`./`))return e}else Array.isArray(e)?t.unshift(...e):e&&typeof e==`object`&&t.unshift(...Object.values(e))}return null}function S(e){if(!e.includes(`*`))return`strip_extension`;let t=e.slice(e.indexOf(`*`)+1);return t&&/^\.[^/]+$/.test(t)?`strip_extension`:`preserve_extension`}function C(e,t){let n=t.find(t=>!t.hasWildcard&&t.key===e);if(n)return{path:o.resolve(n.rootDir,n.target),matchedAlias:n.key,matchedTarget:n.target,emitMode:n.emitMode};let r=t.filter(e=>e.hasWildcard).sort((e,t)=>t.key.length-e.key.length);for(let t of r){let n=w(e,t.key,{allowBareAliasBase:!0});if(n!==null)return{path:o.resolve(t.rootDir,T(t.target,n)),matchedAlias:t.key,matchedTarget:t.target,emitMode:t.emitMode}}return null}function w(e,t,n={}){if(!t.includes(`*`))return e===t?``:null;let[r,i=``]=t.split(`*`);return r&&e.startsWith(r)&&e.endsWith(i)?i?e.slice(r.length,-i.length):e.slice(r.length):n.allowBareAliasBase&&i===``&&r&&r.endsWith(`/`)&&e===r.slice(0,-1)?``:null}function T(e,t){if(!e.includes(`*`))return e;let[n,r=``]=e.split(`*`);return t?n?`${n}${t}${r}`:t:n?n.replace(/\/$/,``):``}const E=/* @__PURE__ */ new Map;async function re(e){let t=o.resolve(e),n=E.get(t);if(n)return n;let r=(await D(e))?.imports;if(!r||typeof r!=`object`||Array.isArray(r))return E.set(t,[]),[];let i=[];for(let[e,n]of Object.entries(r)){if(!e.startsWith(`#`))continue;let r=x(n);r&&i.push({key:e,aliasBase:e===`#*`?`#`:e.endsWith(`/*`)?e.slice(0,-2):e,target:r,emitMode:S(r),hasWildcard:e.includes(`*`),rootDir:t})}return E.set(t,i),i}async function ie(e,t){return C(e,await re(t))}async function D(e=``){let t=o.join(e,`package.json`);return h(t)}_.object({compilerOptions:_.object({paths:_.record(_.string(),_.string().or(_.array(_.string())))})});function ae(e){if(e.startsWith(`#`)||e.startsWith(`.`)||ne(e))return null;let t=e.split(`/`);return e.startsWith(`@`)?t.length<2?null:{packageName:`${t[0]}/${t[1]}`}:{packageName:t[0]}}const O=/* @__PURE__ */ new Map,k=/* @__PURE__ */ new Map;function oe(e){let t=[],n=!1,r=0;for(let i of e.split(`
2
2
  `)){let e=i.trim();if(!e||e.startsWith(`#`))continue;let a=i.match(/^(\s*)([\w-]+)\s*:/);if(a){r=a[1]?.length??0,n=a[2]===`packages`;continue}if(!n)continue;let o=i.match(/^(\s*)-\s*(.+?)\s*(?:#.*)?$/);((!o||o[1]?.length)??r>=0)||t.push(o[2]?.trim().replace(/^["']|["']$/g,``)??``)}return t}async function se(e){let t=[],n=o.resolve(e,`pnpm-workspace.yaml`);if(i(n)){let e=await g(n);t.push(...oe(e))}let a=r(e,`package.json`);if(i(a))try{let e=(await h(a)).workspaces,n=Array.isArray(e)?e:e?.packages;Array.isArray(n)&&t.push(...n.filter(e=>!e.startsWith(`!`)))}catch{}return Array.from(new Set(t))}async function ce(e){let t=await se(e),n=/* @__PURE__ */ new Map;if(!t.length)return n;let r=await ee(t.map(e=>o.posix.join(e.split(o.sep).join(`/`),`package.json`)),{cwd:e,ignore:[`**/node_modules/**`]});for(let t of r){let r=o.resolve(e,o.dirname(t)),i=(await D(r))?.name;i&&n.set(i,{packageName:i,packageRoot:r})}return n}async function le(e,t){let n=v(e);if(!n)return null;let r=O.get(n);if(r?.has(t))return r.get(t)??null;let i=await ce(n);return O.set(n,i),i.get(t)??null}function ue(e,t){if(t===`.`)return e;let n=t.slice(2).replace(/\/\*$/,``);return n?`${e}/${n}`:e}async function de(e){let t=`${e.packageRoot}:${e.packageName}`,n=k.get(t);if(n)return n;let r=(await D(e.packageRoot))?.exports;if(!r||typeof r!=`object`||Array.isArray(r))return k.set(t,[]),[];let i=[];for(let[t,n]of Object.entries(r)){if(t!==`.`&&!t.startsWith(`./`))continue;let r=x(n);if(!r)continue;let a=ue(e.packageName,t);i.push({key:t.includes(`*`)?`${a}/*`:a,aliasBase:a,target:r,emitMode:S(r),hasWildcard:t.includes(`*`),rootDir:e.packageRoot})}return k.set(t,i),i}async function fe(e,t){let n=ae(e);if(!n?.packageName)return null;let r=await le(t,n.packageName);return r?C(e,await de(r)):null}async function pe(e,t){let n=t.cwd??t.baseUrl??v();if(e.startsWith(`#`)){let t=await ie(e,n);if(t)return{path:t.path,source:`package_imports`,matchedAlias:t.matchedAlias,matchedTarget:t.matchedTarget,emitMode:t.emitMode}}let r=await fe(e,n);return r?{path:r.path,source:`workspace_package_exports`,matchedAlias:r.matchedAlias,matchedTarget:r.matchedTarget,emitMode:r.emitMode}:j(e,t)}function A(e){return/^@[^/]+\/[^/]+(?:\/.*)?$/.test(e)}function j(e,t){let n=te(t.baseUrl||t.cwd||v(),t.paths??{})(e,void 0,()=>!0,[`.ts`,`.tsx`,`.jsx`,`.js`,`.css`]);if(!n)return null;let r=M(e,t.paths??{});return!r&&A(e)?null:{path:n,source:`tsconfig_paths`,matchedAlias:r?.key??e,matchedTarget:r?.target??n,emitMode:`strip_extension`}}function M(e,t){for(let[n,r]of Object.entries(t)){let t=Array.isArray(r)?r:[r],i=w(e,n);if(i!==null)return{key:n,target:t[0]?.includes(`*`)&&i!==null?t[0].replace(/\*/g,i):t[0]}}return null}const N=`default`,P=`@/components`,F=`@/lib/utils`,I=`app/globals.css`,L=`tailwind.config.js`,R=`slate`,z=`components.json`,B={configFile:z,dotenv:!1,envName:!1,packageJson:!1,rcFile:!1,extend:!1};async function me(e){let t=e;for(;;){let e=await d({cwd:t,...B});if(e._configFile)return e;let n=o.dirname(t);if(n===t)return null;t=n}}async function V(e){let t=await G(e);return t?(t.iconLibrary||=t.style===`new-york`?`radix`:`lucide`,U(e,t)):null}const H={"@shadcn":`${y}/styles/{style}/{name}.json`};async function U(e,t){t.registries={...H,...t.registries??{}};let n=await u(e);if(!n)throw Error(`Failed to load tsconfig.json.`);let r=await W(`utils`,t.aliases.utils,e,n),i=await W(`components`,t.aliases.components,e,n),a=t.aliases.ui?await W(`ui`,t.aliases.ui,e,n):o.resolve(i??e,`ui`),s=t.aliases.lib?await W(`lib`,t.aliases.lib,e,n):o.resolve(r??e,`..`),c=t.aliases.hooks?await W(`hooks`,t.aliases.hooks,e,n):o.resolve(i??e,`..`,`hooks`);return he(e,{components:i,utils:r,ui:a,lib:s,hooks:c}),p.parse({...t,resolvedPaths:{cwd:e,tailwindConfig:t.tailwind.config?o.resolve(e,t.tailwind.config):``,tailwindCss:o.resolve(e,t.tailwind.css),utils:r,components:i,ui:a,lib:s,hooks:c}})}async function W(e,t,n,i){let a=await pe(t,{...i,cwd:n});if(!a?.path||t.startsWith(`#`)&&a.path===r(n,t))return null;if(e!==`utils`&&(a.source===`package_imports`||a.source===`workspace_package_exports`)){if(!a.matchedAlias.includes(`*`)&&/\/index\.[^/]+$/.test(a.path))return o.dirname(a.path);if(a.matchedAlias.includes(`*`)&&/\.[^/]+$/.test(a.path))return a.path.replace(/\.[^/]+$/,``)}return a.path}function he(e,t){let n=[`components`,`ui`,`lib`,`hooks`,`utils`].filter(e=>!t[e]);if(n.length)throw Error([`Could not resolve the following aliases in ${f.cyan(e)}: ${f.cyan(n.join(`, `))}.`,`Configure path aliases in ${f.cyan(`tsconfig.json`)} or imports in ${f.cyan(`package.json`)} for this workspace and try again.`].join(`
3
3
  `))}async function G(e){let t;try{let n=await me(e);if(!n)return null;t=n.configFile;let r=m.parse(n.config);if(r.registries){for(let e of Object.keys(r.registries))if(e in H)throw Error(`"${e}" is a built-in registry and cannot be overridden.`)}return r}catch(n){let r=t??`${e}/${z}`;throw n instanceof Error&&n.message.includes(`reserved registry`)?n:Error(`Invalid configuration found in ${f.cyan(r)}.`)}}function K(e){let t={resolvedPaths:{cwd:process.cwd(),tailwindConfig:``,tailwindCss:``,utils:``,components:``,ui:``,lib:``,hooks:``},style:``,tailwind:{config:``,css:``,baseColor:``,cssVariables:!1},rsc:!1,tsx:!0,aliases:{components:``,utils:``},registries:{...H}};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 ge=/* @__PURE__ */ e({BUILTIN_REGISTRIES:()=>H,DEFAULT_COMPONENTS:()=>P,DEFAULT_STYLE:()=>N,DEFAULT_TAILWIND_BASE_COLOR:()=>R,DEFAULT_TAILWIND_CONFIG:()=>L,DEFAULT_TAILWIND_CSS:()=>I,DEFAULT_UTILS:()=>F,createRegistryConfig:()=>K,default:()=>$,extractComponentsFromRegistry:()=>Q,getRawConfig:()=>G,getRegistryConfig:()=>V,registryItemToComponent:()=>X,registryItemsToComponents:()=>Z,resolveConfigPaths:()=>U,toDependencyRecord:()=>q});const _e=/* @__PURE__ */ new Set([`block`,`component`,`ui`,`page`]),ve=/* @__PURE__ */ new Set([`lib`,`block`,`component`,`ui`,`hook`,`theme`,`page`,`file`,`style`,`base`,`font`,`item`]);function q(e){if(!e?.length)return;let t={};for(let n of e){let e=n.lastIndexOf(`@`);e>0?t[n.slice(0,e)]=n.slice(e+1)||`*`:t[n]=`*`}return t}function J(e){return e.startsWith(`registry:`)?e.slice(9):e}function ye(e){if(!e)return;let t=J(e);return _e.has(t)?t:void 0}function be(e){if(!e)return;let t=J(e);return ve.has(t)?t:void 0}function Y(e){if(!e?.length)return;let t=[];for(let n of e){if(typeof n==`string`){t.push({path:n,type:`file`});continue}if(!n||typeof n!=`object`)continue;let e=n;if(!e.path)continue;let r=be(e.type)??`file`;t.push({path:e.path,type:r,...e.content?{content:e.content}:{},...e.target?{target:e.target}:{}})}return t.length>0?t:void 0}function X(e){let t=[e.description,e.docs].filter(e=>!!e?.trim()).join(`
4
4
 
5
5
  `),n=ye(e.type),r=Y(e.files),i=q(e.dependencies),a=q(e.devDependencies),o=q(e.registryDependencies);return{name:e.name,title:e.title?.trim()||e.name,...n?{type:n}:{},...e.categories?.[0]?{category:e.categories[0]}:{},...e.categories?.length?{tags:[...e.categories]}:{},...t?{description:t}:{},...i?{dependencies:i}:{},...a?{devDependencies:a}:{},...o?{registryDependencies:o}:{},...r?{files:r}:{}}}function Z(e){if(!e?.length)return{};let t={};for(let n of e)n?.name&&(t[n.name]=X(n));return t}function xe(e){return i(e)&&a(e).isFile()?{cwd:c(e),registryFile:s(e)}:{cwd:e}}async function Q(e){try{return Z((await l(xe(e))).items)}catch{return{}}}var $=n(e=>({name:`shadcn:extract`,extract:async n=>{if(n.components&&Object.keys(n.components).length>0)return n;let i=e?.configFile;if(!i){let{cwd:e}=t();i=r(e,`registry.json`)}let a=await Q(i);return{...n,components:a}}}));export{U as _,Z as a,P as c,L as d,I as f,V as g,G as h,X as i,N as l,K as m,$ as n,q as o,F as p,ge as r,H as s,Q as t,R as u};
6
- //# sourceMappingURL=extract-Cq6P6fUp.mjs.map
6
+ //# sourceMappingURL=extract-ChYr-1z-.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"extract-Cq6P6fUp.mjs","names":["isAbsolute","__exportAll","path","chalk","fg","isAbsolute$1","REGISTRY_URL","SHADCN_URL","resolveLocalPathTarget","queue","target","value","getImportTargetEmitMode","suffix","resolveImportEntryMatch","exactMatch","entries","entry","importPath","wildcardMatches","b","a","wildcardValue","getPatternWildcardValue","applyWildcardTarget","pattern","prefix","options","packageImportEntriesCache","getPackageImportEntries","cacheKey","cwd","cachedEntries","imports","getPackageInfo","key","resolvePackageImport","packageJsonPath","readJsonFile","z","parsePackageSpecifier","segments","workspacePackageCache","workspaceExportEntriesCache","parsePnpmWorkspacePackages","patterns","inPackages","packagesIndent","line","content","trimmed","keyMatch","itemMatch","getWorkspacePatterns","pnpmWorkspacePath","existsSync","readFile","joinPaths","workspacesField","workspaces","w","loadWorkspacePackages","root","packageMap","packageJsonPaths","packageRoot","name","findWorkspacePackage","workspaceRoot","getWorkspaceRoot","cachedPackages","packageName","workspacePackages","getAliasBase","exportKey","normalizedKey","getWorkspacePackageExportEntries","workspacePackage","exportsField","aliasBase","resolveWorkspacePackageExport","specifier","resolveImportWithMetadata","config","resolved","workspaceResolved","resolveFromTsconfigPaths","isScopedPackageSpecifier","matchedPath","createMatchPath","matchedPattern","findMatchingTsPathPattern","targets","paths","targetList","DEFAULT_STYLE","DEFAULT_COMPONENTS","DEFAULT_UTILS","DEFAULT_TAILWIND_CSS","DEFAULT_TAILWIND_CONFIG","DEFAULT_TAILWIND_BASE_COLOR","COMPONENTS_CONFIG_FILE","COMPONENTS_CONFIG_LOAD_OPTIONS","loadComponentsConfig","currentDir","result","loadConfig","parentDir","getRegistryConfig","getRawConfig","resolveConfigPaths","BUILTIN_REGISTRIES","tsConfig","loadTsConfig","resolvedUtils","resolveAliasPath","resolvedComponents","resolvedUi","resolvedLib","resolvedHooks","assertResolvedAliases","configSchema","alias","aliasKey","missingAliases","resolvedAliases","configFile","configResult","rawConfigSchema","registryName","error","componentPath","createRegistryConfig","defaultConfig","partial","extract_exports","extract_default","extractComponentsFromRegistry","registryItemToComponent","registryItemsToComponents","toDependencyRecord","COMPONENT_TYPES","FILE_TYPES","deps","record","dep","at","stripRegistryPrefix","mapComponentType","type","normalized","mapFileType","mapFiles","files","mapped","file","fileType","description","item","part","dependencies","devDependencies","registryDependencies","items","components","resolveLoadOptions","registryPath","statSync","dirname","basename","loadRegistry","definePlugin","spec","useExecution"],"sources":[],"mappings":""}
1
+ {"version":3,"file":"extract-ChYr-1z-.mjs","names":["isAbsolute","__exportAll","path","chalk","fg","isAbsolute$1","REGISTRY_URL","SHADCN_URL","resolveLocalPathTarget","queue","target","value","getImportTargetEmitMode","suffix","resolveImportEntryMatch","exactMatch","entries","entry","importPath","wildcardMatches","b","a","wildcardValue","getPatternWildcardValue","applyWildcardTarget","pattern","prefix","options","packageImportEntriesCache","getPackageImportEntries","cacheKey","cwd","cachedEntries","imports","getPackageInfo","key","resolvePackageImport","packageJsonPath","readJsonFile","z","parsePackageSpecifier","segments","workspacePackageCache","workspaceExportEntriesCache","parsePnpmWorkspacePackages","patterns","inPackages","packagesIndent","line","content","trimmed","keyMatch","itemMatch","getWorkspacePatterns","pnpmWorkspacePath","existsSync","readFile","joinPaths","workspacesField","workspaces","w","loadWorkspacePackages","root","packageMap","packageJsonPaths","packageRoot","name","findWorkspacePackage","workspaceRoot","getWorkspaceRoot","cachedPackages","packageName","workspacePackages","getAliasBase","exportKey","normalizedKey","getWorkspacePackageExportEntries","workspacePackage","exportsField","aliasBase","resolveWorkspacePackageExport","specifier","resolveImportWithMetadata","config","resolved","workspaceResolved","resolveFromTsconfigPaths","isScopedPackageSpecifier","matchedPath","createMatchPath","matchedPattern","findMatchingTsPathPattern","targets","paths","targetList","DEFAULT_STYLE","DEFAULT_COMPONENTS","DEFAULT_UTILS","DEFAULT_TAILWIND_CSS","DEFAULT_TAILWIND_CONFIG","DEFAULT_TAILWIND_BASE_COLOR","COMPONENTS_CONFIG_FILE","COMPONENTS_CONFIG_LOAD_OPTIONS","loadComponentsConfig","currentDir","result","loadConfig","parentDir","getRegistryConfig","getRawConfig","resolveConfigPaths","BUILTIN_REGISTRIES","tsConfig","loadTsConfig","resolvedUtils","resolveAliasPath","resolvedComponents","resolvedUi","resolvedLib","resolvedHooks","assertResolvedAliases","configSchema","alias","aliasKey","missingAliases","resolvedAliases","configFile","configResult","rawConfigSchema","registryName","error","componentPath","createRegistryConfig","defaultConfig","partial","extract_exports","extract_default","extractComponentsFromRegistry","registryItemToComponent","registryItemsToComponents","toDependencyRecord","COMPONENT_TYPES","FILE_TYPES","deps","record","dep","at","stripRegistryPrefix","mapComponentType","type","normalized","mapFileType","mapFiles","files","mapped","file","fileType","description","item","part","dependencies","devDependencies","registryDependencies","items","components","resolveLoadOptions","registryPath","statSync","dirname","basename","loadRegistry","definePlugin","spec","useExecution"],"sources":[],"mappings":""}
@@ -1,4 +1,4 @@
1
- const e=require("./rolldown-runtime-Chgba0Kb.cjs");let t=require("@power-plant/core"),n=require("@razorwind/core/plugin"),r=require("@stryke/path/join"),i=require("node:fs"),a=require("node:path");a=e.n(a,1);let o=require("shadcn/registry"),s=require("@stryke/fs/tsconfig"),c=require("c12"),l=require("chalk");l=e.n(l,1);let u=require("fast-glob");u=e.n(u,1);let d=require("shadcn/schema");require("shadcn/preset");let f=require("@stryke/fs/json"),ee=require("@stryke/fs/read-file");require("node:fs/promises");let p=require("zod");require("@stryke/http/fetch"),require("@stryke/url/helpers");let m=require("@stryke/fs/get-workspace-root"),te=require("tsconfig-paths"),h=require("@stryke/path/is-type");const g=process.env.REGISTRY_URL??`https://ui.shadcn.com/r`,_=g.replace(/\/r\/?$/,``);`${_}`,`${_}`,`${_}`,`${_}`,`${_}`,`${_}`,`${_}`,`${_}`,`${_}`,`${_}`,`${_}`;function v(e){let t=[e];for(;t.length;){let e=t.shift();if(typeof e==`string`){if(e.startsWith(`./`))return e;continue}if(Array.isArray(e)){t.unshift(...e);continue}e&&typeof e==`object`&&t.unshift(...Object.values(e))}return null}function y(e){if(!e.includes(`*`))return`strip_extension`;let t=e.slice(e.indexOf(`*`)+1);return t&&/^\.[^/]+$/.test(t)?`strip_extension`:`preserve_extension`}function b(e,t){let n=t.find(t=>!t.hasWildcard&&t.key===e);if(n)return{path:a.default.resolve(n.rootDir,n.target),matchedAlias:n.key,matchedTarget:n.target,emitMode:n.emitMode};let r=t.filter(e=>e.hasWildcard).sort((e,t)=>t.key.length-e.key.length);for(let t of r){let n=x(e,t.key,{allowBareAliasBase:!0});if(n!==null)return{path:a.default.resolve(t.rootDir,ne(t.target,n)),matchedAlias:t.key,matchedTarget:t.target,emitMode:t.emitMode}}return null}function x(e,t,n={}){if(!t.includes(`*`))return e===t?``:null;let[r,i=``]=t.split(`*`);return r&&e.startsWith(r)&&e.endsWith(i)?i?e.slice(r.length,-i.length):e.slice(r.length):n.allowBareAliasBase&&i===``&&r&&r.endsWith(`/`)&&e===r.slice(0,-1)?``:null}function ne(e,t){if(!e.includes(`*`))return e;let[n,r=``]=e.split(`*`);return t?n?`${n}${t}${r}`:t:n?n.replace(/\/$/,``):``}const S=/* @__PURE__ */ new Map;async function C(e){let t=a.default.resolve(e),n=S.get(t);if(n)return n;let r=(await w(e))?.imports;if(!r||typeof r!=`object`||Array.isArray(r))return S.set(t,[]),[];let i=[];for(let[e,n]of Object.entries(r)){if(!e.startsWith(`#`))continue;let r=v(n);r&&i.push({key:e,aliasBase:e===`#*`?`#`:e.endsWith(`/*`)?e.slice(0,-2):e,target:r,emitMode:y(r),hasWildcard:e.includes(`*`),rootDir:t})}return S.set(t,i),i}async function re(e,t){return b(e,await C(t))}async function w(e=``){let t=a.default.join(e,`package.json`);return(0,f.readJsonFile)(t)}p.z.object({compilerOptions:p.z.object({paths:p.z.record(p.z.string(),p.z.string().or(p.z.array(p.z.string())))})});function ie(e){if(e.startsWith(`#`)||e.startsWith(`.`)||(0,h.isAbsolute)(e))return null;let t=e.split(`/`);return e.startsWith(`@`)?t.length<2?null:{packageName:`${t[0]}/${t[1]}`}:{packageName:t[0]}}const T=/* @__PURE__ */ new Map,E=/* @__PURE__ */ new Map;function D(e){let t=[],n=!1,r=0;for(let i of e.split(`
1
+ const e=require("./rolldown-runtime-Chgba0Kb.cjs");let t=require("@power-plant/core"),n=require("@razorwind/core/plugin"),r=require("@stryke/path/join"),i=require("node:fs"),a=require("node:path");a=e.n(a,1);let o=require("shadcn/registry"),s=require("@stryke/fs/tsconfig"),c=require("c12"),l=require("chalk");l=e.n(l,1);let u=require("fast-glob");u=e.n(u,1);let d=require("shadcn/schema");require("shadcn/preset");let f=require("@stryke/fs/json"),ee=require("@stryke/fs/read-file");require("node:fs/promises");let p=require("zod");require("@stryke/http/fetch"),require("@stryke/url/helpers");let m=require("@stryke/fs/get-workspace-root"),te=require("tsconfig-paths"),h=require("@stryke/path/is-type");const g=process.env.REGISTRY_URL??`https://ui.shadcn.com/r`,_=g.replace(/\/r\/?$/,``);`${_}`,`${_}`,`${_}`,`${_}`,`${_}`,`${_}`,`${_}`,`${_}`,`${_}`,`${_}`,`${_}`;function v(e){let t=[e];for(;t.length;){let e=t.shift();if(typeof e==`string`){if(e.startsWith(`./`))return e}else Array.isArray(e)?t.unshift(...e):e&&typeof e==`object`&&t.unshift(...Object.values(e))}return null}function y(e){if(!e.includes(`*`))return`strip_extension`;let t=e.slice(e.indexOf(`*`)+1);return t&&/^\.[^/]+$/.test(t)?`strip_extension`:`preserve_extension`}function b(e,t){let n=t.find(t=>!t.hasWildcard&&t.key===e);if(n)return{path:a.default.resolve(n.rootDir,n.target),matchedAlias:n.key,matchedTarget:n.target,emitMode:n.emitMode};let r=t.filter(e=>e.hasWildcard).sort((e,t)=>t.key.length-e.key.length);for(let t of r){let n=x(e,t.key,{allowBareAliasBase:!0});if(n!==null)return{path:a.default.resolve(t.rootDir,ne(t.target,n)),matchedAlias:t.key,matchedTarget:t.target,emitMode:t.emitMode}}return null}function x(e,t,n={}){if(!t.includes(`*`))return e===t?``:null;let[r,i=``]=t.split(`*`);return r&&e.startsWith(r)&&e.endsWith(i)?i?e.slice(r.length,-i.length):e.slice(r.length):n.allowBareAliasBase&&i===``&&r&&r.endsWith(`/`)&&e===r.slice(0,-1)?``:null}function ne(e,t){if(!e.includes(`*`))return e;let[n,r=``]=e.split(`*`);return t?n?`${n}${t}${r}`:t:n?n.replace(/\/$/,``):``}const S=/* @__PURE__ */ new Map;async function C(e){let t=a.default.resolve(e),n=S.get(t);if(n)return n;let r=(await w(e))?.imports;if(!r||typeof r!=`object`||Array.isArray(r))return S.set(t,[]),[];let i=[];for(let[e,n]of Object.entries(r)){if(!e.startsWith(`#`))continue;let r=v(n);r&&i.push({key:e,aliasBase:e===`#*`?`#`:e.endsWith(`/*`)?e.slice(0,-2):e,target:r,emitMode:y(r),hasWildcard:e.includes(`*`),rootDir:t})}return S.set(t,i),i}async function re(e,t){return b(e,await C(t))}async function w(e=``){let t=a.default.join(e,`package.json`);return(0,f.readJsonFile)(t)}p.z.object({compilerOptions:p.z.object({paths:p.z.record(p.z.string(),p.z.string().or(p.z.array(p.z.string())))})});function ie(e){if(e.startsWith(`#`)||e.startsWith(`.`)||(0,h.isAbsolute)(e))return null;let t=e.split(`/`);return e.startsWith(`@`)?t.length<2?null:{packageName:`${t[0]}/${t[1]}`}:{packageName:t[0]}}const T=/* @__PURE__ */ new Map,E=/* @__PURE__ */ new Map;function D(e){let t=[],n=!1,r=0;for(let i of e.split(`
2
2
  `)){let e=i.trim();if(!e||e.startsWith(`#`))continue;let a=i.match(/^(\s*)([\w-]+)\s*:/);if(a){r=a[1]?.length??0,n=a[2]===`packages`;continue}if(!n)continue;let o=i.match(/^(\s*)-\s*(.+?)\s*(?:#.*)?$/);((!o||o[1]?.length)??r>=0)||t.push(o[2]?.trim().replace(/^["']|["']$/g,``)??``)}return t}async function O(e){let t=[],n=a.default.resolve(e,`pnpm-workspace.yaml`);if((0,i.existsSync)(n)){let e=await(0,ee.readFile)(n);t.push(...D(e))}let o=(0,r.joinPaths)(e,`package.json`);if((0,i.existsSync)(o))try{let e=(await(0,f.readJsonFile)(o)).workspaces,n=Array.isArray(e)?e:e?.packages;Array.isArray(n)&&t.push(...n.filter(e=>!e.startsWith(`!`)))}catch{}return Array.from(new Set(t))}async function k(e){let t=await O(e),n=/* @__PURE__ */ new Map;if(!t.length)return n;let r=await(0,u.default)(t.map(e=>a.default.posix.join(e.split(a.default.sep).join(`/`),`package.json`)),{cwd:e,ignore:[`**/node_modules/**`]});for(let t of r){let r=a.default.resolve(e,a.default.dirname(t)),i=(await w(r))?.name;i&&n.set(i,{packageName:i,packageRoot:r})}return n}async function A(e,t){let n=(0,m.getWorkspaceRoot)(e);if(!n)return null;let r=T.get(n);if(r?.has(t))return r.get(t)??null;let i=await k(n);return T.set(n,i),i.get(t)??null}function j(e,t){if(t===`.`)return e;let n=t.slice(2).replace(/\/\*$/,``);return n?`${e}/${n}`:e}async function ae(e){let t=`${e.packageRoot}:${e.packageName}`,n=E.get(t);if(n)return n;let r=(await w(e.packageRoot))?.exports;if(!r||typeof r!=`object`||Array.isArray(r))return E.set(t,[]),[];let i=[];for(let[t,n]of Object.entries(r)){if(t!==`.`&&!t.startsWith(`./`))continue;let r=v(n);if(!r)continue;let a=j(e.packageName,t);i.push({key:t.includes(`*`)?`${a}/*`:a,aliasBase:a,target:r,emitMode:y(r),hasWildcard:t.includes(`*`),rootDir:e.packageRoot})}return E.set(t,i),i}async function oe(e,t){let n=ie(e);if(!n?.packageName)return null;let r=await A(t,n.packageName);return r?b(e,await ae(r)):null}async function se(e,t){let n=t.cwd??t.baseUrl??(0,m.getWorkspaceRoot)();if(e.startsWith(`#`)){let t=await re(e,n);if(t)return{path:t.path,source:`package_imports`,matchedAlias:t.matchedAlias,matchedTarget:t.matchedTarget,emitMode:t.emitMode}}let r=await oe(e,n);return r?{path:r.path,source:`workspace_package_exports`,matchedAlias:r.matchedAlias,matchedTarget:r.matchedTarget,emitMode:r.emitMode}:le(e,t)}function ce(e){return/^@[^/]+\/[^/]+(?:\/.*)?$/.test(e)}function le(e,t){let n=(0,te.createMatchPath)(t.baseUrl||t.cwd||(0,m.getWorkspaceRoot)(),t.paths??{})(e,void 0,()=>!0,[`.ts`,`.tsx`,`.jsx`,`.js`,`.css`]);if(!n)return null;let r=ue(e,t.paths??{});return!r&&ce(e)?null:{path:n,source:`tsconfig_paths`,matchedAlias:r?.key??e,matchedTarget:r?.target??n,emitMode:`strip_extension`}}function ue(e,t){for(let[n,r]of Object.entries(t)){let t=Array.isArray(r)?r:[r],i=x(e,n);if(i!==null)return{key:n,target:t[0]?.includes(`*`)&&i!==null?t[0].replace(/\*/g,i):t[0]}}return null}const M=`default`,N=`@/components`,P=`@/lib/utils`,F=`app/globals.css`,I=`tailwind.config.js`,L=`slate`,R=`components.json`,z={configFile:R,dotenv:!1,envName:!1,packageJson:!1,rcFile:!1,extend:!1};async function B(e){let t=e;for(;;){let e=await(0,c.loadConfig)({cwd:t,...z});if(e._configFile)return e;let n=a.default.dirname(t);if(n===t)return null;t=n}}async function V(e){let t=await G(e);return t?(t.iconLibrary||=t.style===`new-york`?`radix`:`lucide`,U(e,t)):null}const H={"@shadcn":`${g}/styles/{style}/{name}.json`};async function U(e,t){t.registries={...H,...t.registries??{}};let n=await(0,s.loadTsConfig)(e);if(!n)throw Error(`Failed to load tsconfig.json.`);let r=await W(`utils`,t.aliases.utils,e,n),i=await W(`components`,t.aliases.components,e,n),o=t.aliases.ui?await W(`ui`,t.aliases.ui,e,n):a.default.resolve(i??e,`ui`),c=t.aliases.lib?await W(`lib`,t.aliases.lib,e,n):a.default.resolve(r??e,`..`),l=t.aliases.hooks?await W(`hooks`,t.aliases.hooks,e,n):a.default.resolve(i??e,`..`,`hooks`);return de(e,{components:i,utils:r,ui:o,lib:c,hooks:l}),d.configSchema.parse({...t,resolvedPaths:{cwd:e,tailwindConfig:t.tailwind.config?a.default.resolve(e,t.tailwind.config):``,tailwindCss:a.default.resolve(e,t.tailwind.css),utils:r,components:i,ui:o,lib:c,hooks:l}})}async function W(e,t,n,i){let o=await se(t,{...i,cwd:n});if(!o?.path||t.startsWith(`#`)&&o.path===(0,r.joinPaths)(n,t))return null;if(e!==`utils`&&(o.source===`package_imports`||o.source===`workspace_package_exports`)){if(!o.matchedAlias.includes(`*`)&&/\/index\.[^/]+$/.test(o.path))return a.default.dirname(o.path);if(o.matchedAlias.includes(`*`)&&/\.[^/]+$/.test(o.path))return o.path.replace(/\.[^/]+$/,``)}return o.path}function de(e,t){let n=[`components`,`ui`,`lib`,`hooks`,`utils`].filter(e=>!t[e]);if(n.length)throw Error([`Could not resolve the following aliases in ${l.default.cyan(e)}: ${l.default.cyan(n.join(`, `))}.`,`Configure path aliases in ${l.default.cyan(`tsconfig.json`)} or imports in ${l.default.cyan(`package.json`)} for this workspace and try again.`].join(`
3
3
  `))}async function G(e){let t;try{let n=await B(e);if(!n)return null;t=n.configFile;let r=d.rawConfigSchema.parse(n.config);if(r.registries){for(let e of Object.keys(r.registries))if(e in H)throw Error(`"${e}" is a built-in registry and cannot be overridden.`)}return r}catch(n){let r=t??`${e}/${R}`;throw n instanceof Error&&n.message.includes(`reserved registry`)?n:Error(`Invalid configuration found in ${l.default.cyan(r)}.`)}}function K(e){let t={resolvedPaths:{cwd:process.cwd(),tailwindConfig:``,tailwindCss:``,utils:``,components:``,ui:``,lib:``,hooks:``},style:``,tailwind:{config:``,css:``,baseColor:``,cssVariables:!1},rsc:!1,tsx:!0,aliases:{components:``,utils:``},registries:{...H}};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 fe=/* @__PURE__ */ e.t({BUILTIN_REGISTRIES:()=>H,DEFAULT_COMPONENTS:()=>N,DEFAULT_STYLE:()=>M,DEFAULT_TAILWIND_BASE_COLOR:()=>L,DEFAULT_TAILWIND_CONFIG:()=>I,DEFAULT_TAILWIND_CSS:()=>F,DEFAULT_UTILS:()=>P,createRegistryConfig:()=>K,default:()=>$,extractComponentsFromRegistry:()=>Q,getRawConfig:()=>G,getRegistryConfig:()=>V,registryItemToComponent:()=>X,registryItemsToComponents:()=>Z,resolveConfigPaths:()=>U,toDependencyRecord:()=>J});const q=/* @__PURE__ */ new Set([`block`,`component`,`ui`,`page`]),pe=/* @__PURE__ */ new Set([`lib`,`block`,`component`,`ui`,`hook`,`theme`,`page`,`file`,`style`,`base`,`font`,`item`]);function J(e){if(!e?.length)return;let t={};for(let n of e){let e=n.lastIndexOf(`@`);e>0?t[n.slice(0,e)]=n.slice(e+1)||`*`:t[n]=`*`}return t}function Y(e){return e.startsWith(`registry:`)?e.slice(9):e}function me(e){if(!e)return;let t=Y(e);return q.has(t)?t:void 0}function he(e){if(!e)return;let t=Y(e);return pe.has(t)?t:void 0}function ge(e){if(!e?.length)return;let t=[];for(let n of e){if(typeof n==`string`){t.push({path:n,type:`file`});continue}if(!n||typeof n!=`object`)continue;let e=n;if(!e.path)continue;let r=he(e.type)??`file`;t.push({path:e.path,type:r,...e.content?{content:e.content}:{},...e.target?{target:e.target}:{}})}return t.length>0?t:void 0}function X(e){let t=[e.description,e.docs].filter(e=>!!e?.trim()).join(`
4
4
 
package/dist/extract.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("./extract-B_N0NRI0.cjs");exports.BUILTIN_REGISTRIES=e.s,exports.DEFAULT_COMPONENTS=e.c,exports.DEFAULT_STYLE=e.l,exports.DEFAULT_TAILWIND_BASE_COLOR=e.u,exports.DEFAULT_TAILWIND_CONFIG=e.d,exports.DEFAULT_TAILWIND_CSS=e.f,exports.DEFAULT_UTILS=e.p,exports.createRegistryConfig=e.m,exports.default=e.n,exports.extractComponentsFromRegistry=e.t,exports.getRawConfig=e.h,exports.getRegistryConfig=e.g,exports.registryItemToComponent=e.i,exports.registryItemsToComponents=e.a,exports.resolveConfigPaths=e._,exports.toDependencyRecord=e.o;
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("./extract-DpJObz8O.cjs");exports.BUILTIN_REGISTRIES=e.s,exports.DEFAULT_COMPONENTS=e.c,exports.DEFAULT_STYLE=e.l,exports.DEFAULT_TAILWIND_BASE_COLOR=e.u,exports.DEFAULT_TAILWIND_CONFIG=e.d,exports.DEFAULT_TAILWIND_CSS=e.f,exports.DEFAULT_UTILS=e.p,exports.createRegistryConfig=e.m,exports.default=e.n,exports.extractComponentsFromRegistry=e.t,exports.getRawConfig=e.h,exports.getRegistryConfig=e.g,exports.registryItemToComponent=e.i,exports.registryItemsToComponents=e.a,exports.resolveConfigPaths=e._,exports.toDependencyRecord=e.o;
@@ -1,3 +1,3 @@
1
1
  import { t as ShadcnExtractPluginOptions } from "./types-BvsYQIch.cjs";
2
- import { S as ShadcnWorkspaceConfig, _ as getRegistryConfig, a as registryItemsToComponents, b as ShadcnRawConfig, c as DEFAULT_COMPONENTS, d as DEFAULT_TAILWIND_CONFIG, f as DEFAULT_TAILWIND_CSS, g as getRawConfig, h as createRegistryConfig, i as registryItemToComponent, l as DEFAULT_STYLE, m as RegistryConfig, n as extractComponentsFromRegistry, o as toDependencyRecord, p as DEFAULT_UTILS, s as BUILTIN_REGISTRIES, t as _default, u as DEFAULT_TAILWIND_BASE_COLOR, v as resolveConfigPaths, x as ShadcnRegistryConfig, y as ShadcnConfig } from "./extract-BOD6umnM.cjs";
2
+ import { S as ShadcnWorkspaceConfig, _ as getRegistryConfig, a as registryItemsToComponents, b as ShadcnRawConfig, c as DEFAULT_COMPONENTS, d as DEFAULT_TAILWIND_CONFIG, f as DEFAULT_TAILWIND_CSS, g as getRawConfig, h as createRegistryConfig, i as registryItemToComponent, l as DEFAULT_STYLE, m as RegistryConfig, n as extractComponentsFromRegistry, o as toDependencyRecord, p as DEFAULT_UTILS, s as BUILTIN_REGISTRIES, t as _default, u as DEFAULT_TAILWIND_BASE_COLOR, v as resolveConfigPaths, x as ShadcnRegistryConfig, y as ShadcnConfig } from "./extract-BNy04DfM.cjs";
3
3
  export { BUILTIN_REGISTRIES, DEFAULT_COMPONENTS, DEFAULT_STYLE, DEFAULT_TAILWIND_BASE_COLOR, DEFAULT_TAILWIND_CONFIG, DEFAULT_TAILWIND_CSS, DEFAULT_UTILS, type RegistryConfig, type ShadcnConfig, type ShadcnExtractPluginOptions, type ShadcnRawConfig, type ShadcnRegistryConfig, type ShadcnWorkspaceConfig, createRegistryConfig, _default as default, extractComponentsFromRegistry, getRawConfig, getRegistryConfig, registryItemToComponent, registryItemsToComponents, resolveConfigPaths, toDependencyRecord };
@@ -1,3 +1,3 @@
1
1
  import { t as ShadcnExtractPluginOptions } from "./types-BKVZEcei.mjs";
2
- import { S as ShadcnWorkspaceConfig, _ as getRegistryConfig, a as registryItemsToComponents, b as ShadcnRawConfig, c as DEFAULT_COMPONENTS, d as DEFAULT_TAILWIND_CONFIG, f as DEFAULT_TAILWIND_CSS, g as getRawConfig, h as createRegistryConfig, i as registryItemToComponent, l as DEFAULT_STYLE, m as RegistryConfig, n as extractComponentsFromRegistry, o as toDependencyRecord, p as DEFAULT_UTILS, s as BUILTIN_REGISTRIES, t as _default, u as DEFAULT_TAILWIND_BASE_COLOR, v as resolveConfigPaths, x as ShadcnRegistryConfig, y as ShadcnConfig } from "./extract-BHw0cSFv.mjs";
2
+ import { S as ShadcnWorkspaceConfig, _ as getRegistryConfig, a as registryItemsToComponents, b as ShadcnRawConfig, c as DEFAULT_COMPONENTS, d as DEFAULT_TAILWIND_CONFIG, f as DEFAULT_TAILWIND_CSS, g as getRawConfig, h as createRegistryConfig, i as registryItemToComponent, l as DEFAULT_STYLE, m as RegistryConfig, n as extractComponentsFromRegistry, o as toDependencyRecord, p as DEFAULT_UTILS, s as BUILTIN_REGISTRIES, t as _default, u as DEFAULT_TAILWIND_BASE_COLOR, v as resolveConfigPaths, x as ShadcnRegistryConfig, y as ShadcnConfig } from "./extract-B1aMLBK8.mjs";
3
3
  export { BUILTIN_REGISTRIES, DEFAULT_COMPONENTS, DEFAULT_STYLE, DEFAULT_TAILWIND_BASE_COLOR, DEFAULT_TAILWIND_CONFIG, DEFAULT_TAILWIND_CSS, DEFAULT_UTILS, type RegistryConfig, type ShadcnConfig, type ShadcnExtractPluginOptions, type ShadcnRawConfig, type ShadcnRegistryConfig, type ShadcnWorkspaceConfig, createRegistryConfig, _default as default, extractComponentsFromRegistry, getRawConfig, getRegistryConfig, registryItemToComponent, registryItemsToComponents, resolveConfigPaths, toDependencyRecord };
package/dist/extract.mjs CHANGED
@@ -1 +1 @@
1
- import{_ as e,a as t,c as n,d as r,f as i,g as a,h as o,i as s,l as c,m as l,n as u,o as d,p as f,s as p,t as m,u as h}from"./extract-Cq6P6fUp.mjs";export{p as BUILTIN_REGISTRIES,n as DEFAULT_COMPONENTS,c as DEFAULT_STYLE,h as DEFAULT_TAILWIND_BASE_COLOR,r as DEFAULT_TAILWIND_CONFIG,i as DEFAULT_TAILWIND_CSS,f as DEFAULT_UTILS,l as createRegistryConfig,u as default,m as extractComponentsFromRegistry,o as getRawConfig,a as getRegistryConfig,s as registryItemToComponent,t as registryItemsToComponents,e as resolveConfigPaths,d as toDependencyRecord};
1
+ export{s as BUILTIN_REGISTRIES,c as DEFAULT_COMPONENTS,l as DEFAULT_STYLE,u as DEFAULT_TAILWIND_BASE_COLOR,d as DEFAULT_TAILWIND_CONFIG,f as DEFAULT_TAILWIND_CSS,p as DEFAULT_UTILS,m as createRegistryConfig,n as default,t as extractComponentsFromRegistry,h as getRawConfig,g as getRegistryConfig,i as registryItemToComponent,a as registryItemsToComponents,_ as resolveConfigPaths,o as toDependencyRecord}from"./extract-ChYr-1z-.mjs";
package/dist/generate.mjs CHANGED
@@ -1 +1 @@
1
- import{a as e,c as t,i as n,n as r,r as i,s as a,t as o}from"./generate-DjuX7y1I.mjs";export{o as componentToRegistryItem,r as componentsToRegistryItems,e as default,i as fromDependencyRecord,n as generateRegistryJson,t as renderInstallMd,a as renderRegistryJson};
1
+ export{t as componentToRegistryItem,n as componentsToRegistryItems,a as default,r as fromDependencyRecord,i as generateRegistryJson,c as renderInstallMd,s as renderRegistryJson}from"./generate-DjuX7y1I.mjs";
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./extract-B_N0NRI0.cjs"),t=require("./generate-B6rz-KUH.cjs");Object.defineProperty(exports,"extract",{enumerable:!0,get:function(){return e.r}}),Object.defineProperty(exports,"generate",{enumerable:!0,get:function(){return t.o}});
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./extract-DpJObz8O.cjs"),t=require("./generate-B6rz-KUH.cjs");Object.defineProperty(exports,"extract",{enumerable:!0,get:function(){return e.r}}),Object.defineProperty(exports,"generate",{enumerable:!0,get:function(){return t.o}});
package/dist/index.d.cts CHANGED
@@ -1,3 +1,3 @@
1
- import { r as extract_d_exports } from "./extract-BOD6umnM.cjs";
1
+ import { r as extract_d_exports } from "./extract-BNy04DfM.cjs";
2
2
  import { l as generate_d_exports } from "./generate-CeAMsu9A.cjs";
3
3
  export { extract_d_exports as extract, generate_d_exports as generate };
package/dist/index.d.mts CHANGED
@@ -1,3 +1,3 @@
1
- import { r as extract_d_exports } from "./extract-BHw0cSFv.mjs";
1
+ import { r as extract_d_exports } from "./extract-B1aMLBK8.mjs";
2
2
  import { l as generate_d_exports } from "./generate-Dw8npW9-.mjs";
3
3
  export { extract_d_exports as extract, generate_d_exports as generate };
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- import{r as e}from"./extract-Cq6P6fUp.mjs";import{o as t}from"./generate-DjuX7y1I.mjs";export{e as extract,t as generate};
1
+ import{r as e}from"./extract-ChYr-1z-.mjs";import{o as t}from"./generate-DjuX7y1I.mjs";export{e as extract,t as generate};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@razorwind/shadcn",
3
- "version": "0.0.82",
3
+ "version": "0.0.84",
4
4
  "type": "module",
5
5
  "description": "Razorwind Shadcn plugin that can create Shadcn UI registry files from design tokens/components or read a Shadcn UI registry file and return the design tokens/components.",
6
6
  "repository": {
@@ -80,14 +80,14 @@
80
80
  "dependencies": {
81
81
  "@power-plant/core": "^0.0.93",
82
82
  "@power-plant/dtcg-schema": "^0.0.1",
83
- "@razorwind/core": "^0.0.86",
83
+ "@razorwind/core": "^0.0.88",
84
84
  "@stryke/fs": "^0.33.118",
85
85
  "@stryke/path": "^0.29.43",
86
86
  "@stryke/types": "^0.12.44",
87
87
  "c12": "^3.3.4",
88
88
  "chalk": "^5.6.2",
89
89
  "fast-glob": "^3.3.3",
90
- "shadcn": "^4.21.3",
90
+ "shadcn": "^4.21.4",
91
91
  "tsconfig-paths": "^4.2.0",
92
92
  "yaml": "^2.9.1",
93
93
  "zod": "^4.6.5"
@@ -98,5 +98,5 @@
98
98
  "typescript": "^6.0.3"
99
99
  },
100
100
  "publishConfig": { "access": "public" },
101
- "gitHead": "be1610245506b56d2df777578d4a04a42efb60da"
101
+ "gitHead": "5f6fc1cf68c5fe3e9e554073a2325635f600ccf3"
102
102
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"extract-BHw0cSFv.d.mts","names":[],"sources":["../src/registry/shadcn-types.ts","../src/registry/config.ts","../src/extract.ts"],"mappings":""}