@razorwind/core 0.0.33 → 0.0.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{config-14WZlCKO.d.mts → config-76inX2KE.d.cts} +6 -4
- package/dist/{config-B0uAQJ0V.d.cts.map → config-76inX2KE.d.cts.map} +1 -1
- package/dist/{config-B0uAQJ0V.d.cts → config-CWYJH70g.d.mts} +6 -4
- package/dist/config-CWYJH70g.d.mts.map +1 -0
- package/dist/{index-BByAtn7d.d.cts → index-BRN9L8Lx.d.cts} +4 -4
- package/dist/{index-BByAtn7d.d.cts.map → index-BRN9L8Lx.d.cts.map} +1 -1
- package/dist/{index-BzsWyssi.d.cts → index-Bmg0_4Yr.d.cts} +1 -1
- package/dist/{index-Cgkjc-Wi.d.mts → index-C0PpOx6h.d.mts} +4 -4
- package/dist/{index-Cgkjc-Wi.d.mts.map → index-C0PpOx6h.d.mts.map} +1 -1
- package/dist/{index-dMv2FZkj.d.mts → index-DB9GwBAG.d.mts} +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +33 -6
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +33 -6
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/lib/tokens/index.cjs +1 -1
- package/dist/lib/tokens/index.d.cts +1 -1
- package/dist/lib/tokens/index.d.mts +1 -1
- package/dist/lib/tokens/index.mjs +1 -1
- package/dist/{plugin-BemoRvYG.d.cts → plugin-CEq_6bcb.d.cts} +2 -2
- package/dist/{plugin-BemoRvYG.d.cts.map → plugin-CEq_6bcb.d.cts.map} +1 -1
- package/dist/{plugin-CVvkZn3F.d.mts → plugin-w3-Ub3fa.d.mts} +2 -2
- package/dist/plugin-w3-Ub3fa.d.mts.map +1 -0
- package/dist/plugin.d.cts +2 -2
- package/dist/plugin.d.mts +2 -2
- package/dist/schema/index.cjs +1 -1
- package/dist/schema/index.d.cts +2 -2
- package/dist/schema/index.d.mts +2 -2
- package/dist/schema/index.mjs +1 -1
- package/dist/{schema-r6H4qZHJ.cjs → schema-93daQRSN.cjs} +1 -1
- package/dist/{schema-D_QQto0V.d.cts → schema-BihaPsfF.d.cts} +7 -1
- package/dist/{schema-D_QQto0V.d.cts.map → schema-BihaPsfF.d.cts.map} +1 -1
- package/dist/{schema-D_QQto0V.d.mts → schema-BihaPsfF.d.mts} +7 -1
- package/dist/schema-BihaPsfF.d.mts.map +1 -0
- package/dist/{schema-jfwKMfbW.mjs → schema-buR6a6IP.mjs} +2 -2
- package/dist/schema-buR6a6IP.mjs.map +1 -0
- package/dist/{tokens-DQh8MSxD.mjs → tokens-DidKwlVV.mjs} +2 -2
- package/dist/tokens-DidKwlVV.mjs.map +1 -0
- package/dist/{tokens-X_lH5RFn.cjs → tokens-b0f4LbvP.cjs} +1 -1
- package/dist/utils/index.cjs +1 -1
- package/dist/utils/index.d.cts +34 -2
- package/dist/utils/index.d.cts.map +1 -1
- package/dist/utils/index.d.mts +34 -2
- package/dist/utils/index.d.mts.map +1 -1
- package/dist/utils/index.mjs +1 -1
- package/dist/{utils-Dyd9gGJ-.mjs → utils-B5uabOd5.mjs} +2 -2
- package/dist/utils-B5uabOd5.mjs.map +1 -0
- package/dist/{utils-qX41mcuD.cjs → utils-BiL8zQzg.cjs} +1 -1
- package/package.json +2 -2
- package/dist/config-14WZlCKO.d.mts.map +0 -1
- package/dist/plugin-CVvkZn3F.d.mts.map +0 -1
- package/dist/schema-D_QQto0V.d.mts.map +0 -1
- package/dist/schema-jfwKMfbW.mjs.map +0 -1
- package/dist/tokens-DQh8MSxD.mjs.map +0 -1
- package/dist/utils-Dyd9gGJ-.mjs.map +0 -1
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { a as Icons, f as Components, t as Schema } from "./schema-
|
|
2
|
-
import { GeneratedDocument } from "@power-plant/core";
|
|
1
|
+
import { a as Icons, f as Components, t as Schema } from "./schema-BihaPsfF.cjs";
|
|
3
2
|
import { PreprocessedTokens } from "style-dictionary";
|
|
4
|
-
import { EnvPaths } from "@stryke/env/get-env-paths";
|
|
5
3
|
import { Tokens } from "@power-plant/dtcg-schema";
|
|
4
|
+
import { EnvPaths } from "@stryke/env/get-env-paths";
|
|
6
5
|
import { MaybePromise, RequiredKeys } from "@stryke/types/base";
|
|
6
|
+
import { GeneratedDocument } from "@power-plant/core";
|
|
7
7
|
import { DesignTokens } from "style-dictionary/types";
|
|
8
8
|
//#region src/types/plugin.d.ts
|
|
9
9
|
/**
|
|
@@ -177,6 +177,8 @@ interface UserConfig extends Options {
|
|
|
177
177
|
license?: string;
|
|
178
178
|
repository?: string;
|
|
179
179
|
homepage?: string;
|
|
180
|
+
/** Path or URL to the design-system logo / brand image. */
|
|
181
|
+
logo?: string;
|
|
180
182
|
tags?: string[];
|
|
181
183
|
tokens?: Tokens | Record<string, Tokens>;
|
|
182
184
|
components?: Components;
|
|
@@ -199,4 +201,4 @@ type Config = RequiredKeys<UserConfig, "componentsPath" | "iconsPath" | "plugins
|
|
|
199
201
|
};
|
|
200
202
|
//#endregion
|
|
201
203
|
export { UserConfigFn as a, UserConfigParams as c, TokensPreprocessor as d, UserConfigExport as i, Plugin as l, Options as n, UserConfigFnObject as o, UserConfig as r, UserConfigFnPromise as s, Config as t, TokensParser as u };
|
|
202
|
-
//# sourceMappingURL=config-
|
|
204
|
+
//# sourceMappingURL=config-76inX2KE.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-
|
|
1
|
+
{"version":3,"file":"config-76inX2KE.d.cts","names":[],"sources":["../src/types/plugin.ts","../src/types/config.ts"],"mappings":";;;;;;;;;;;;;;;UAgCiB;EACf;EACA,SAAS;EACT,SAAS,qBAAqB;;;;;;;;;KAUpB;EAEN;EACA,eAAe,YAAY,uBAAuB;MAElD,YAAY,uBAAuB;;;;;;;;;UAUxB;;;;;;;EAOf;;;;;;EAOA,UAAU;;;;;;EAOV,gBAAgB;;;;;;;;EAShB,WAAW,MAAM,QAAQ,QAAQ,WAAW,aAAa;;;;;;;;EASzD,YACE,MAAM,QACN,QAAQ,WACL,aAAa,eAAe;;;;;;;;EASjC,YAAY,MAAM,QAAQ,QAAQ,WAAW;;;;UCtF9B;;;;;;;;;;;;;;;;;;EAkBf;;;;EAKA;;;;;;EAOA;;;;;;;;EASA;;;;;;EAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyCA;;UAGe,mBAAmB;EAClC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA,SAAS,SAAS,eAAe;EACjC,aAAa;EACb,QAAQ;EACR,UAAU;;UAGK;EACf;EACA;;KAGU,sBAAsB,QAAQ,eAAe;KAC7C,uBACV,QAAQ,qBACL,QAAQ,aAAa;KACd,gBACV,QAAQ,qBACL,aAAa,eAAe,QAAQ,aAAa;KAC1C,mBACR,aACA,eACA,QAAQ,aAAa,gBACrB,qBACA,sBACA;KAEQ,SAAS,aACnB;EAGA;EACA,UAAU;IACR"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { a as Icons, f as Components, t as Schema } from "./schema-
|
|
1
|
+
import { a as Icons, f as Components, t as Schema } from "./schema-BihaPsfF.mjs";
|
|
2
|
+
import { GeneratedDocument } from "@power-plant/core";
|
|
2
3
|
import { PreprocessedTokens } from "style-dictionary";
|
|
3
|
-
import { Tokens } from "@power-plant/dtcg-schema";
|
|
4
4
|
import { EnvPaths } from "@stryke/env/get-env-paths";
|
|
5
|
+
import { Tokens } from "@power-plant/dtcg-schema";
|
|
5
6
|
import { MaybePromise, RequiredKeys } from "@stryke/types/base";
|
|
6
|
-
import { GeneratedDocument } from "@power-plant/core";
|
|
7
7
|
import { DesignTokens } from "style-dictionary/types";
|
|
8
8
|
//#region src/types/plugin.d.ts
|
|
9
9
|
/**
|
|
@@ -177,6 +177,8 @@ interface UserConfig extends Options {
|
|
|
177
177
|
license?: string;
|
|
178
178
|
repository?: string;
|
|
179
179
|
homepage?: string;
|
|
180
|
+
/** Path or URL to the design-system logo / brand image. */
|
|
181
|
+
logo?: string;
|
|
180
182
|
tags?: string[];
|
|
181
183
|
tokens?: Tokens | Record<string, Tokens>;
|
|
182
184
|
components?: Components;
|
|
@@ -199,4 +201,4 @@ type Config = RequiredKeys<UserConfig, "componentsPath" | "iconsPath" | "plugins
|
|
|
199
201
|
};
|
|
200
202
|
//#endregion
|
|
201
203
|
export { UserConfigFn as a, UserConfigParams as c, TokensPreprocessor as d, UserConfigExport as i, Plugin as l, Options as n, UserConfigFnObject as o, UserConfig as r, UserConfigFnPromise as s, Config as t, TokensParser as u };
|
|
202
|
-
//# sourceMappingURL=config-
|
|
204
|
+
//# sourceMappingURL=config-CWYJH70g.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-CWYJH70g.d.mts","names":[],"sources":["../src/types/plugin.ts","../src/types/config.ts"],"mappings":""}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { t as Schema } from "./schema-
|
|
2
|
-
import "./index-
|
|
3
|
-
import { l as Plugin, t as Config } from "./config-
|
|
1
|
+
import { t as Schema } from "./schema-BihaPsfF.cjs";
|
|
2
|
+
import "./index-Bmg0_4Yr.cjs";
|
|
3
|
+
import { l as Plugin, t as Config } from "./config-76inX2KE.cjs";
|
|
4
4
|
import { Tokens } from "@power-plant/dtcg-schema";
|
|
5
5
|
import { ExecutionContext } from "@power-plant/core";
|
|
6
6
|
import { Hooks, Parser, PreprocessedTokens } from "style-dictionary/types";
|
|
@@ -166,4 +166,4 @@ declare function registerRazorwindHooks(plugins?: Plugin[], target?: StyleDictio
|
|
|
166
166
|
declare const registerRazorwindParsers: typeof registerRazorwindHooks;
|
|
167
167
|
//#endregion
|
|
168
168
|
export { RazorwindParserName as C, TOKEN_PARSER_NAMES as D, TOKEN_FILE_EXTENSIONS as E, TYPE_PATH_HINTS as O, DEFAULT_TOKEN_PATH_CANDIDATES as S, TOKEN_DIRECTORY_GLOB as T, inferTypeFromPath as _, razorwindInferPreprocessor as a, normalizeTokenTree as b, LoadTokensOptions as c, loadTokensOrThrow as d, ResolveTokensPathOptions as f, InferredTokenType as g, themeKeyFromPath as h, getRazorwindPreprocessorHooks as i, LoadedTokens as l, resolveTokensSource as m, StyleDictionaryRegisterTarget as n, registerRazorwindHooks as o, ResolvedTokensSource as p, getRazorwindParserHooks as r, registerRazorwindParsers as s, RAZORWIND_INFER_PREPROCESSOR as t, loadTokens as u, inferValue as v, THEME_BASENAME_PATTERN as w, parseCssCustomProperties as x, nestFlatTokens as y };
|
|
169
|
-
//# sourceMappingURL=index-
|
|
169
|
+
//# sourceMappingURL=index-BRN9L8Lx.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-BRN9L8Lx.d.cts","names":[],"sources":["../src/lib/tokens/constants.ts","../src/lib/tokens/css.ts","../src/lib/tokens/infer.ts","../src/lib/tokens/resolve-path.ts","../src/lib/tokens/load.ts","../src/lib/tokens/parsers.ts"],"mappings":";;;;;;;;cAmBa;KAOD,8BAA8B;;cAG7B;;;;;cAsBA;;cAyBA;;cAGA,wBAAsB;;cAItB,iBAAiB;;;;;;;iBCvDd,yBACd,mBACC;;;KCgCS;;;;iBAmEI,kBACd,iBACC;;;;iBAiBa,WACd,cACA;EACG;EAAgB,OAAO;;;;;iBAsPZ,mBACd,gBACA;;;;;;;;iBA2Cc,eACd,MAAM,0BACL;;;UC9Zc;;;;EAIf;;;;EAKA;;;;EAKA,gBAAgB;;UAGD;;;;;;;EAOf;;;;EAKA;;;;EAKA;;;;;;;;;iBAyFc,oBACd,SAAS,2BACR;;;;iBAqFa,iBAAiB;;;UCzMhB,0BAA0B;;;;;;EAMzC;;KAGU,eAAe,SAAS,eAAe;;;;;;;;;iBA2I7B,WACpB,SAAS,iBAAiB,QAAQ,gBACjC,QAAQ;;;;;;;;;;iBAsCW,kBACpB,SAAS,iBAAiB,QAAQ,gBACjC,QAAQ;;;;cClME;;UAGI;EACf,iBAAiB,QAAQ;EACzB,uBAAuB;IACrB;IACA,qBAAqB;;;;iBAyET,2BAA2B,YAAY;;;;;iBAavC,2BACd,YAAY,qBACX;;iBAKa,iCAAiC,YAC/C;;;;;;;;;;iBAgBc,uBACd,UAAS,UACT,SAAQ;;;;cA6CG,iCAAwB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { t as Schema } from "./schema-
|
|
2
|
-
import "./index-
|
|
3
|
-
import { l as Plugin, t as Config } from "./config-
|
|
1
|
+
import { t as Schema } from "./schema-BihaPsfF.mjs";
|
|
2
|
+
import "./index-DB9GwBAG.mjs";
|
|
3
|
+
import { l as Plugin, t as Config } from "./config-CWYJH70g.mjs";
|
|
4
4
|
import { ExecutionContext } from "@power-plant/core";
|
|
5
5
|
import { Tokens } from "@power-plant/dtcg-schema";
|
|
6
6
|
import { Hooks, Parser, PreprocessedTokens } from "style-dictionary/types";
|
|
@@ -166,4 +166,4 @@ declare function registerRazorwindHooks(plugins?: Plugin[], target?: StyleDictio
|
|
|
166
166
|
declare const registerRazorwindParsers: typeof registerRazorwindHooks;
|
|
167
167
|
//#endregion
|
|
168
168
|
export { RazorwindParserName as C, TOKEN_PARSER_NAMES as D, TOKEN_FILE_EXTENSIONS as E, TYPE_PATH_HINTS as O, DEFAULT_TOKEN_PATH_CANDIDATES as S, TOKEN_DIRECTORY_GLOB as T, inferTypeFromPath as _, razorwindInferPreprocessor as a, normalizeTokenTree as b, LoadTokensOptions as c, loadTokensOrThrow as d, ResolveTokensPathOptions as f, InferredTokenType as g, themeKeyFromPath as h, getRazorwindPreprocessorHooks as i, LoadedTokens as l, resolveTokensSource as m, StyleDictionaryRegisterTarget as n, registerRazorwindHooks as o, ResolvedTokensSource as p, getRazorwindParserHooks as r, registerRazorwindParsers as s, RAZORWIND_INFER_PREPROCESSOR as t, loadTokens as u, inferValue as v, THEME_BASENAME_PATTERN as w, parseCssCustomProperties as x, nestFlatTokens as y };
|
|
169
|
-
//# sourceMappingURL=index-
|
|
169
|
+
//# sourceMappingURL=index-C0PpOx6h.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-C0PpOx6h.d.mts","names":[],"sources":["../src/lib/tokens/constants.ts","../src/lib/tokens/css.ts","../src/lib/tokens/infer.ts","../src/lib/tokens/resolve-path.ts","../src/lib/tokens/load.ts","../src/lib/tokens/parsers.ts"],"mappings":""}
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./rolldown-runtime-BocRIvOZ.cjs"),t=require("./schema-r6H4qZHJ.cjs"),n=require("./tokens-X_lH5RFn.cjs"),r=require("./plugin.cjs");let i=require("@power-plant/core"),a=require("@stryke/type-checks/is-empty-object"),o=require("defu"),s=require("style-dictionary");s=e.t(s,1);let c=require("@stryke/fs/exists"),l=require("@stryke/fs/is-file"),u=require("@stryke/fs/json"),d=require("@stryke/fs/list-files"),f=require("@stryke/path/append"),p=require("@stryke/path/file-path-fns"),m=require("@stryke/path/join"),h=require("@stryke/string-format/title-case"),g=require("@stryke/type-checks/is-set-object"),_=require("@stryke/type-checks/is-set-string"),v=require("node:fs/promises"),y=require("node:path"),ee=require("@stryke/env/get-env-paths"),b=require("@stryke/path/find"),x=require("@stryke/path/replace"),te=require("@stryke/type-checks/is-function"),S=require("c12"),ne=require("jiti"),C=require("node:fs"),w=require("node:os");w=e.t(w,1);var re=`0.0.33`;const ie=t.o.partial(),T=new Set([`tsx`,`jsx`,`ts`,`js`,`mdx`,`md`,`css`,`html`,`txt`]),E=(0,o.createDefu)((e,t,n)=>Array.isArray(n)?(e[t]=n,!0):!1);function D(e,t){return(0,y.isAbsolute)(t)?t:(0,y.resolve)(e,t)}function O(e){return Array.isArray(e)?e.filter(_.isSetString):(0,_.isSetString)(e)?[e]:[]}function k(e){if((0,_.isSetString)(e))return e;if((0,g.isSetObject)(e)&&`url`in e&&(0,_.isSetString)(e.url))return e.url}function A(e){let t=e.toLowerCase();if(T.has(t))return t}function ae(e){let t=(0,p.findFileExtensionSafe)(e)?.toLowerCase();return!!(t&&T.has(t))}function j(e){if(!e)return;let n=t.a.safeParse(e);if(n.success)return[n.data];if(!Array.isArray(e))return;let r=[];for(let n of e){let e=t.a.safeParse(n);e.success&&r.push(e.data)}return r.length>0?r:void 0}function M(e){if(!e)return;let n=t.s.safeParse(e);if(n.success)return[n.data];if(!Array.isArray(e))return;let r=[];for(let n of e){if((0,_.isSetString)(n)){let e=(0,p.findFileName)(n,{withExtension:!1})||n,i=t.s.safeParse({name:e,path:n});i.success&&r.push(i.data);continue}let e=t.s.safeParse(n);e.success&&r.push(e.data)}return r.length>0?r:void 0}function N(e){if(!(0,g.isSetObject)(e))return;let{files:t,usage:n,...r}=e,i=ie.safeParse(r);if(i.success)return Object.keys(i.data).length>0?i.data:void 0}function P(e){return(0,g.isSetObject)(e)&&`path`in e}async function oe(e){let t=(0,m.joinPaths)(e,`package.json`);if(!(0,c.existsSync)(t))return;let n;try{n=await(0,u.readJsonFile)(t)}catch{return}let r={};(0,_.isSetString)(n.name)&&(r.name=n.name,r.title=n.name),(0,_.isSetString)(n.description)&&(r.description=n.description),(0,_.isSetString)(n.version)&&(r.version=n.version),(0,_.isSetString)(n.homepage)&&(r.homepage=n.homepage);let i=k(n.repository);if(i&&(r.repository=i),(0,g.isSetObject)(n.dependencies)&&(r.dependencies=n.dependencies),(0,g.isSetObject)(n.devDependencies)&&(r.devDependencies=n.devDependencies),Array.isArray(n.keywords)){let e=n.keywords.filter(_.isSetString);e.length>0&&(r.tags=e)}let a=n.razorwind,o,s,l;P(a)?s=j(a):(0,g.isSetObject)(a)&&(o=N(a),`files`in a&&(s=j(a.files)),`usage`in a&&(l=M(a.usage)));let d=E(o??{},r);return s?.length&&(d.files=s),l?.length&&(d.usage=l),Object.keys(d).length>0?d:void 0}async function se(e){let t=(0,m.joinPaths)(e,`component.json`);if(!(0,c.existsSync)(t))return;let n;try{n=await(0,u.readJsonFile)(t)}catch{return}if(P(n)||Array.isArray(n)){let e=j(n);if(e)return{files:e}}if(!(0,g.isSetObject)(n))return;let r=N(n)??{},i=`files`in n?j(n.files):void 0,a=`usage`in n?M(n.usage):void 0;return i?.length&&(r.files=i),a?.length&&(r.usage=a),Object.keys(r).length>0?r:void 0}async function ce(e){try{return(await(0,v.readdir)(e,{withFileTypes:!0})).filter(e=>e.isFile()&&!e.name.startsWith(`.`)&&ae(e.name)).map(e=>e.name).toSorted((e,t)=>e.localeCompare(t))}catch{return[]}}async function le(e,t){if(t?.length)return Promise.all(t.map(async t=>{let n=(0,f.appendPath)(t.path,e),r=(0,p.findFileExtensionSafe)(t.path)??``,i=t.language??A(r),a=t.name||(0,p.findFileName)(t.path,{withExtension:!1})||t.path,o=t.content===void 0?(0,c.existsSync)(n)?await(0,v.readFile)(n,`utf8`):void 0:t.content;return{...t,name:a,path:n,...i?{language:i}:{},...o===void 0?{}:{content:o}}}));let n=(0,m.joinPaths)(e,`usage`);if(!(0,c.existsSync)(n)||!(0,l.isDirectory)(n))return;let r=await ce(n);if(r.length!==0)return Promise.all(r.map(async e=>{let t=(0,m.joinPaths)(n,e),r=A((0,p.findFileExtensionSafe)(e)??``),i=(0,p.findFileName)(e,{withExtension:!1})||e;return{name:i,title:(0,h.titleCase)(i),path:t,content:await(0,v.readFile)(t,`utf8`),...r?{language:r}:{}}}))}async function ue(e,t){let n=t??(await(0,d.listFiles)(e)).filter(e=>(0,p.findFileName)(e,{withExtension:!1})===`index`);return Promise.all(n.filter(Boolean).map(async t=>typeof t==`string`?{type:/[tj]sx$/.test((0,p.findFileExtensionSafe)(t))?`component`:`file`,path:t,content:await(0,v.readFile)((0,f.appendPath)(t,e),`utf8`)}:{type:/[tj]sx$/.test((0,p.findFileExtensionSafe)(t.path))?`component`:`file`,...t,content:t.content?t.content:t.path?await(0,v.readFile)((0,f.appendPath)(t.path,e),`utf8`):void 0,path:(0,f.appendPath)(t.path,e)}))}async function de(e){let n=await oe(e),r=await se(e);if(!n&&!r)return;let i=E(r??{},n??{}),a=(0,_.isSetString)(i.name)?i.name:(0,p.findFolderName)(e),o=(0,_.isSetString)(i.title)?i.title:(0,h.titleCase)(a),s=t.o.safeParse({...i,name:a,title:o});if(!s.success)return;let c=await le(e,s.data.usage);return{...s.data,files:await ue(e,s.data.files),...c?.length?{usage:c}:{}}}async function F(e){let t={},n=O(e.options.componentsPath);for(let r of n){let n=D(e.cwd,r);if(!(!(0,c.existsSync)(n)||!(0,l.isDirectory)(n)))try{let e=await(0,v.readdir)(n,{withFileTypes:!0});for(let r of e){if(!r.isDirectory()||r.name.startsWith(`.`))continue;let e=await de((0,m.joinPaths)(n,r.name));e&&(t[e.name]=e)}}catch{continue}}return t}const I=t.r.partial(),L=new Set([`svg`,`png`,`webp`,`jpg`,`jpeg`,`gif`,`ico`]),R=(0,o.createDefu)((e,t,n)=>Array.isArray(n)?(e[t]=n,!0):!1);function z(e,t){return(0,y.isAbsolute)(t)?t:(0,y.resolve)(e,t)}function B(e){return Array.isArray(e)?e.filter(_.isSetString):(0,_.isSetString)(e)?[e]:[]}function V(e){if((0,_.isSetString)(e))return e;if((0,g.isSetObject)(e)&&`url`in e&&(0,_.isSetString)(e.url))return e.url}function H(e){let t=e.toLowerCase();if(L.has(t))return t}function U(e){let t=(0,p.findFileExtensionSafe)(e)?.toLowerCase();return!!(t&&L.has(t))}function fe(e){return n._.test(e)}async function W(e){try{return(await(0,v.readdir)(e,{withFileTypes:!0})).filter(e=>e.isFile()&&U(e.name)).map(e=>e.name)}catch{return[]}}function G(e){if(!e)return;let n=t.n.safeParse(e);if(n.success)return[n.data];if(!Array.isArray(e))return;let r=[];for(let n of e){let e=t.n.safeParse(n);e.success&&r.push(e.data)}return r.length>0?r:void 0}function K(e){if(!(0,g.isSetObject)(e))return;let t=I.safeParse(e);if(t.success)return Object.keys(t.data).length>0?t.data:void 0}function q(e){return(0,g.isSetObject)(e)&&`path`in e}async function J(e,t,n){let r=(0,f.appendPath)(e,t),i=H((0,p.findFileExtensionSafe)(e)??``)??`file`,a=i===`svg`?await(0,v.readFile)(r,`utf8`):void 0;return{path:r,type:i,...n?{theme:n}:{},...a===void 0?{}:{content:a}}}async function pe(e){let t=(0,m.joinPaths)(e,`package.json`);if(!(0,c.existsSync)(t))return;let n;try{n=await(0,u.readJsonFile)(t)}catch{return}let r={};(0,_.isSetString)(n.name)&&(r.name=n.name,r.title=n.name),(0,_.isSetString)(n.description)&&(r.description=n.description),(0,_.isSetString)(n.version)&&(r.version=n.version),(0,_.isSetString)(n.homepage)&&(r.homepage=n.homepage);let i=V(n.repository);if(i&&(r.repository=i),Array.isArray(n.keywords)){let e=n.keywords.filter(_.isSetString);e.length>0&&(r.tags=e)}let a=n.razorwind,o,s;q(a)?s=G(a):(0,g.isSetObject)(a)&&(o=K(a),`files`in a&&(s=G(a.files)));let l=R(o??{},r);return s?.length&&(l.files=s),Object.keys(l).length>0?l:void 0}async function me(e){let t=(0,m.joinPaths)(e,`icon.json`);if(!(0,c.existsSync)(t))return;let n;try{n=await(0,u.readJsonFile)(t)}catch{return}if(q(n)||Array.isArray(n)){let e=G(n);if(e)return{files:e}}return K(n)}async function he(e,t){if(t?.length)return Promise.all(t.map(async t=>{let n=(0,f.appendPath)(t.path,e),r=(0,p.findFileExtensionSafe)(t.path)??``,i=t.type??H(r)??`file`,a=t.content===void 0?i===`svg`?await(0,v.readFile)(n,`utf8`):void 0:t.content;return{...t,type:i,path:n,...a===void 0?{}:{content:a}}}));let n=await W(e);return Promise.all(n.map(t=>J(t,e)))}async function ge(e){let n=await pe(e),r=await me(e),i=await W(e);if(!n&&!r&&i.length===0)return;let a=R(r??{},n??{}),o=(0,_.isSetString)(a.name)?a.name:(0,p.findFolderName)(e),s=(0,_.isSetString)(a.title)?a.title:(0,h.titleCase)(o),c=t.r.safeParse({...a,name:o,title:s});if(c.success)return{...c.data,files:await he(e,c.data.files)}}function Y(e,t,n){let r=e[t];if(!r){e[t]={name:t,title:(0,h.titleCase)(t),files:[n]};return}let i=[...r.files??[]],a=i.findIndex(e=>e.path===n.path&&e.theme===n.theme);a>=0?i[a]=n:i.push(n),e[t]={...r,files:i}}async function X(e,t,n){let r=await W(e);for(let i of r){let r=(0,p.findFileName)(i,{withExtension:!1});r&&Y(n,r,await J(i,e,t))}}async function Z(e){let t={},n=B(e.options.iconsPath);for(let r of n){let n=z(e.cwd,r);if(!(!(0,c.existsSync)(n)||!(0,l.isDirectory)(n)))try{let e=await(0,v.readdir)(n,{withFileTypes:!0});for(let r of e){if(r.name.startsWith(`.`))continue;let e=(0,m.joinPaths)(n,r.name);if(r.isDirectory()){if(fe(r.name)){await X(e,r.name,t);continue}let n=await ge(e);if(n){let e=t[n.name];t[n.name]=e?R(n,e):n}continue}if(r.isFile()&&U(r.name)){let e=(0,p.findFileName)(r.name,{withExtension:!1});if(!e)continue;Y(t,e,await J(r.name,n))}}}catch{continue}}return t}const Q=w.default.homedir();async function $(e,t){let n=t.configFile&&(0,C.existsSync)((0,x.replacePath)(t.configFile,e))?(0,x.replacePath)(t.configFile,e):t.configFile&&(0,C.existsSync)(t.configFile)?t.configFile:(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.ts`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.ts`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.js`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.js`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.mts`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.mts`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.mjs`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.mjs`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.cjs`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.cjs`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.cts`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.cts`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.json`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.json`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.yaml`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.yaml`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.yml`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.yml`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.ts`))?(0,m.joinPaths)(e,`razorwind.config.ts`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.js`))?(0,m.joinPaths)(e,`razorwind.config.js`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.mts`))?(0,m.joinPaths)(e,`razorwind.config.mts`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.mjs`))?(0,m.joinPaths)(e,`razorwind.config.mjs`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.cjs`))?(0,m.joinPaths)(e,`razorwind.config.cjs`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.cts`))?(0,m.joinPaths)(e,`razorwind.config.cts`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.json`))?(0,m.joinPaths)(e,`razorwind.config.json`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.yaml`))?(0,m.joinPaths)(e,`razorwind.config.yaml`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.yml`))?(0,m.joinPaths)(e,`razorwind.config.yml`):void 0,r=(0,ee.getEnvPaths)({orgId:`storm-software`,appId:`razorwind`,workspaceRoot:e}),i={fsCache:r.cache},a=(0,ne.createJiti)(e,i),s={};if(n){let r=await a.import(a.esmResolve(n));if(r?.default){let i={};(0,te.isFunction)(r.default)?i=await Promise.resolve(r.default({cwd:e,mode:t.mode??`development`})):((0,g.isSetObject)(r.default)||Array.isArray(r.default))&&(i=r.default),((0,g.isSetObject)(i)||Array.isArray(i))&&(s={...i,configFile:n})}}let[c,l,u]=await Promise.all([(0,S.loadConfig)({cwd:e,name:`razorwind`,envName:t.mode,globalRc:!0,packageJson:`razorwind`,dotenv:!0,jitiOptions:i}),(0,S.loadConfig)({cwd:r.config,name:`razorwind`,envName:t.mode,dotenv:!0,jitiOptions:i}),(0,S.loadConfig)({cwd:Q,name:`razorwind`,envName:t.mode,dotenv:!0,jitiOptions:i})]),d=(0,o.defu)({cwd:e,envPaths:{...r,home:Q}},t,s,(0,g.isSetObject)(c?.config)?{...c.config}:{},(0,g.isSetObject)(l?.config)?{...l.config}:{},(0,g.isSetObject)(u?.config)?{...u.config}:{},{componentsPath:e,iconsPath:(0,m.joinPaths)(e,`assets/icons`),plugins:[]});if(Array.isArray(d.componentsPath)){let t=d.componentsPath.filter(_.isSetString).map(e=>(0,b.findFilePath)(e));d.componentsPath=t.length>0?t:e}else d.componentsPath=(0,_.isSetString)(d.componentsPath)?(0,b.findFilePath)(d.componentsPath):e;if(Array.isArray(d.iconsPath)){let t=d.iconsPath.filter(_.isSetString).map(e=>(0,b.findFilePath)(e));d.iconsPath=t.length>0?t:(0,m.joinPaths)(e,`assets/icons`)}else d.iconsPath=(0,_.isSetString)(d.iconsPath)?(0,b.findFilePath)(d.iconsPath):(0,m.joinPaths)(e,`assets/icons`);return Array.isArray(d.plugins)||(d.plugins=[]),d}function _e(e){return e}const ve=(0,i.defineGenerator)({meta:{name:`razorwind`,title:`Razorwind`,description:`A generator that uses Razorwind to generate design system code from design tokens, components, and icons.`,version:re,tags:[`razorwind`,`dtcg`]},schema:(0,i.defineSchema)({schema:t.t}),input:async e=>{let t=(0,i.useExecution)();if(t.options=await $(t.cwd,e),t.options.plugins.length===0)throw Error(`Razorwind will not generate any code - no plugins configured. Please add at least one plugin to the configuration.`);n.l(t.options.plugins,s.default);let r=t.options.tokens;(!r||(0,a.isEmptyObject)(r))&&(r=await n.t(t));let c={tokens:r??{},components:(0,o.defu)(t.options.components??{},await F(t)??{}),icons:(0,o.defu)(t.options.icons??{},await Z(t)??{})};for(let e of t.options.plugins.filter(e=>e.extract))c=await e.extract(c,t.options);if(!c.tokens||(0,a.isEmptyObject)(c.tokens))throw Error(`Unable to load design tokens for the current workspace. Please ensure that Razorwind is configured correctly and that the tokens are available.`);for(let e of t.options.plugins.filter(e=>e.validate))await e.validate(c,t.options);return c},generator:async e=>{let t=(0,i.useExecution)(),n={};for(let r of t.options.plugins.filter(e=>e.generate)){let i=await r.generate(e,t.options);n=(0,o.defu)(i,n)}return n}});exports.DEFAULT_TOKEN_PATH_CANDIDATES=n.g,exports.RAZORWIND_INFER_PREPROCESSOR=n.a,exports.THEME_BASENAME_PATTERN=n._,exports.TOKEN_DIRECTORY_GLOB=n.v,exports.TOKEN_FILE_EXTENSIONS=n.y,exports.TYPE_PATH_HINTS=n.x,exports.WINDIE_PARSERS=n.b,exports.razorwindParsers=n.b,exports.defineConfig=_e,exports.definePlugin=r.definePlugin,exports.generator=ve,exports.getRazorwindParserHooks=n.o,exports.getRazorwindPreprocessorHooks=n.s,exports.inferTypeFromPath=n.f,exports.inferValue=n.p,exports.loadComponents=F,exports.loadIcons=Z,exports.loadTokens=n.t,exports.loadTokensOrThrow=n.n,exports.nestFlatTokens=n.m,exports.normalizeTokenTree=n.h,exports.parseCssCustomProperties=n.d,exports.razorwindInferPreprocessor=n.c,exports.registerRazorwindHooks=n.l,exports.registerRazorwindParsers=n.u,exports.resolveConfig=$,exports.resolveTokensSource=n.r,exports.themeKeyFromPath=n.i;
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./rolldown-runtime-BocRIvOZ.cjs"),t=require("./schema-93daQRSN.cjs"),n=require("./tokens-b0f4LbvP.cjs"),r=require("./plugin.cjs");let i=require("@power-plant/core"),a=require("@stryke/type-checks/is-empty-object"),o=require("defu"),s=require("style-dictionary");s=e.t(s,1);let c=require("@stryke/fs/exists"),l=require("@stryke/fs/is-file"),u=require("@stryke/fs/json"),d=require("@stryke/fs/list-files"),f=require("@stryke/path/append"),p=require("@stryke/path/file-path-fns"),m=require("@stryke/path/join"),h=require("@stryke/string-format/title-case"),g=require("@stryke/type-checks/is-set-object"),_=require("@stryke/type-checks/is-set-string"),v=require("node:fs/promises"),y=require("node:path"),ee=require("@stryke/env/get-env-paths"),b=require("@stryke/path/find"),x=require("@stryke/path/replace"),te=require("@stryke/type-checks/is-function"),S=require("c12"),ne=require("jiti"),C=require("node:fs"),w=require("node:os");w=e.t(w,1);var re=`0.0.34`;function T(e){if((0,_.isSetString)(e))return e;if((0,g.isSetObject)(e)&&`url`in e&&(0,_.isSetString)(e.url))return e.url}const E=t.o.partial(),D=new Set([`tsx`,`jsx`,`ts`,`js`,`mdx`,`md`,`css`,`html`,`txt`]),O=(0,o.createDefu)((e,t,n)=>Array.isArray(n)?(e[t]=n,!0):!1);function k(e,t){return(0,y.isAbsolute)(t)?t:(0,y.resolve)(e,t)}function ie(e){return Array.isArray(e)?e.filter(_.isSetString):(0,_.isSetString)(e)?[e]:[]}function A(e){let t=e.toLowerCase();if(D.has(t))return t}function ae(e){let t=(0,p.findFileExtensionSafe)(e)?.toLowerCase();return!!(t&&D.has(t))}function j(e){if(!e)return;let n=t.a.safeParse(e);if(n.success)return[n.data];if(!Array.isArray(e))return;let r=[];for(let n of e){let e=t.a.safeParse(n);e.success&&r.push(e.data)}return r.length>0?r:void 0}function M(e){if(!e)return;let n=t.s.safeParse(e);if(n.success)return[n.data];if(!Array.isArray(e))return;let r=[];for(let n of e){if((0,_.isSetString)(n)){let e=(0,p.findFileName)(n,{withExtension:!1})||n,i=t.s.safeParse({name:e,path:n});i.success&&r.push(i.data);continue}let e=t.s.safeParse(n);e.success&&r.push(e.data)}return r.length>0?r:void 0}function N(e){if(!(0,g.isSetObject)(e))return;let{files:t,usage:n,...r}=e,i=E.safeParse(r);if(i.success)return Object.keys(i.data).length>0?i.data:void 0}function P(e){return(0,g.isSetObject)(e)&&`path`in e}async function oe(e){let t=(0,m.joinPaths)(e,`package.json`);if(!(0,c.existsSync)(t))return;let n;try{n=await(0,u.readJsonFile)(t)}catch{return}let r={};(0,_.isSetString)(n.name)&&(r.name=n.name,r.title=n.name),(0,_.isSetString)(n.description)&&(r.description=n.description),(0,_.isSetString)(n.version)&&(r.version=n.version),(0,_.isSetString)(n.homepage)&&(r.homepage=n.homepage);let i=T(n.repository);if(i&&(r.repository=i),(0,g.isSetObject)(n.dependencies)&&(r.dependencies=n.dependencies),(0,g.isSetObject)(n.devDependencies)&&(r.devDependencies=n.devDependencies),Array.isArray(n.keywords)){let e=n.keywords.filter(_.isSetString);e.length>0&&(r.tags=e)}let a=n.razorwind,o,s,l;P(a)?s=j(a):(0,g.isSetObject)(a)&&(o=N(a),`files`in a&&(s=j(a.files)),`usage`in a&&(l=M(a.usage)));let d=O(o??{},r);return s?.length&&(d.files=s),l?.length&&(d.usage=l),Object.keys(d).length>0?d:void 0}async function se(e){let t=(0,m.joinPaths)(e,`component.json`);if(!(0,c.existsSync)(t))return;let n;try{n=await(0,u.readJsonFile)(t)}catch{return}if(P(n)||Array.isArray(n)){let e=j(n);if(e)return{files:e}}if(!(0,g.isSetObject)(n))return;let r=N(n)??{},i=`files`in n?j(n.files):void 0,a=`usage`in n?M(n.usage):void 0;return i?.length&&(r.files=i),a?.length&&(r.usage=a),Object.keys(r).length>0?r:void 0}async function ce(e){try{return(await(0,v.readdir)(e,{withFileTypes:!0})).filter(e=>e.isFile()&&!e.name.startsWith(`.`)&&ae(e.name)).map(e=>e.name).toSorted((e,t)=>e.localeCompare(t))}catch{return[]}}async function le(e,t){if(t?.length)return Promise.all(t.map(async t=>{let n=(0,f.appendPath)(t.path,e),r=(0,p.findFileExtensionSafe)(t.path)??``,i=t.language??A(r),a=t.name||(0,p.findFileName)(t.path,{withExtension:!1})||t.path,o=t.content===void 0?(0,c.existsSync)(n)?await(0,v.readFile)(n,`utf8`):void 0:t.content;return{...t,name:a,path:n,...i?{language:i}:{},...o===void 0?{}:{content:o}}}));let n=(0,m.joinPaths)(e,`usage`);if(!(0,c.existsSync)(n)||!(0,l.isDirectory)(n))return;let r=await ce(n);if(r.length!==0)return Promise.all(r.map(async e=>{let t=(0,m.joinPaths)(n,e),r=A((0,p.findFileExtensionSafe)(e)??``),i=(0,p.findFileName)(e,{withExtension:!1})||e;return{name:i,title:(0,h.titleCase)(i),path:t,content:await(0,v.readFile)(t,`utf8`),...r?{language:r}:{}}}))}async function ue(e,t){let n=t??(await(0,d.listFiles)(e)).filter(e=>(0,p.findFileName)(e,{withExtension:!1})===`index`);return Promise.all(n.filter(Boolean).map(async t=>typeof t==`string`?{type:/[tj]sx$/.test((0,p.findFileExtensionSafe)(t))?`component`:`file`,path:t,content:await(0,v.readFile)((0,f.appendPath)(t,e),`utf8`)}:{type:/[tj]sx$/.test((0,p.findFileExtensionSafe)(t.path))?`component`:`file`,...t,content:t.content?t.content:t.path?await(0,v.readFile)((0,f.appendPath)(t.path,e),`utf8`):void 0,path:(0,f.appendPath)(t.path,e)}))}async function de(e){let n=await oe(e),r=await se(e);if(!n&&!r)return;let i=O(r??{},n??{}),a=(0,_.isSetString)(i.name)?i.name:(0,p.findFolderName)(e),o=(0,_.isSetString)(i.title)?i.title:(0,h.titleCase)(a),s=t.o.safeParse({...i,name:a,title:o});if(!s.success)return;let c=await le(e,s.data.usage);return{...s.data,files:await ue(e,s.data.files),...c?.length?{usage:c}:{}}}async function F(e){let t={},n=ie(e.options.componentsPath);for(let r of n){let n=k(e.cwd,r);if(!(!(0,c.existsSync)(n)||!(0,l.isDirectory)(n)))try{let e=await(0,v.readdir)(n,{withFileTypes:!0});for(let r of e){if(!r.isDirectory()||r.name.startsWith(`.`))continue;let e=await de((0,m.joinPaths)(n,r.name));e&&(t[e.name]=e)}}catch{continue}}return t}const fe=t.r.partial(),I=new Set([`svg`,`png`,`webp`,`jpg`,`jpeg`,`gif`,`ico`]),L=(0,o.createDefu)((e,t,n)=>Array.isArray(n)?(e[t]=n,!0):!1);function pe(e,t){return(0,y.isAbsolute)(t)?t:(0,y.resolve)(e,t)}function me(e){return Array.isArray(e)?e.filter(_.isSetString):(0,_.isSetString)(e)?[e]:[]}function R(e){let t=e.toLowerCase();if(I.has(t))return t}function z(e){let t=(0,p.findFileExtensionSafe)(e)?.toLowerCase();return!!(t&&I.has(t))}function he(e){return n._.test(e)}async function B(e){try{return(await(0,v.readdir)(e,{withFileTypes:!0})).filter(e=>e.isFile()&&z(e.name)).map(e=>e.name)}catch{return[]}}function V(e){if(!e)return;let n=t.n.safeParse(e);if(n.success)return[n.data];if(!Array.isArray(e))return;let r=[];for(let n of e){let e=t.n.safeParse(n);e.success&&r.push(e.data)}return r.length>0?r:void 0}function H(e){if(!(0,g.isSetObject)(e))return;let t=fe.safeParse(e);if(t.success)return Object.keys(t.data).length>0?t.data:void 0}function U(e){return(0,g.isSetObject)(e)&&`path`in e}async function W(e,t,n){let r=(0,f.appendPath)(e,t),i=R((0,p.findFileExtensionSafe)(e)??``)??`file`,a=i===`svg`?await(0,v.readFile)(r,`utf8`):void 0;return{path:r,type:i,...n?{theme:n}:{},...a===void 0?{}:{content:a}}}async function ge(e){let t=(0,m.joinPaths)(e,`package.json`);if(!(0,c.existsSync)(t))return;let n;try{n=await(0,u.readJsonFile)(t)}catch{return}let r={};(0,_.isSetString)(n.name)&&(r.name=n.name,r.title=n.name),(0,_.isSetString)(n.description)&&(r.description=n.description),(0,_.isSetString)(n.version)&&(r.version=n.version),(0,_.isSetString)(n.homepage)&&(r.homepage=n.homepage);let i=T(n.repository);if(i&&(r.repository=i),Array.isArray(n.keywords)){let e=n.keywords.filter(_.isSetString);e.length>0&&(r.tags=e)}let a=n.razorwind,o,s;U(a)?s=V(a):(0,g.isSetObject)(a)&&(o=H(a),`files`in a&&(s=V(a.files)));let l=L(o??{},r);return s?.length&&(l.files=s),Object.keys(l).length>0?l:void 0}async function _e(e){let t=(0,m.joinPaths)(e,`icon.json`);if(!(0,c.existsSync)(t))return;let n;try{n=await(0,u.readJsonFile)(t)}catch{return}if(U(n)||Array.isArray(n)){let e=V(n);if(e)return{files:e}}return H(n)}async function ve(e,t){if(t?.length)return Promise.all(t.map(async t=>{let n=(0,f.appendPath)(t.path,e),r=(0,p.findFileExtensionSafe)(t.path)??``,i=t.type??R(r)??`file`,a=t.content===void 0?i===`svg`?await(0,v.readFile)(n,`utf8`):void 0:t.content;return{...t,type:i,path:n,...a===void 0?{}:{content:a}}}));let n=await B(e);return Promise.all(n.map(t=>W(t,e)))}async function ye(e){let n=await ge(e),r=await _e(e),i=await B(e);if(!n&&!r&&i.length===0)return;let a=L(r??{},n??{}),o=(0,_.isSetString)(a.name)?a.name:(0,p.findFolderName)(e),s=(0,_.isSetString)(a.title)?a.title:(0,h.titleCase)(o),c=t.r.safeParse({...a,name:o,title:s});if(c.success)return{...c.data,files:await ve(e,c.data.files)}}function G(e,t,n){let r=e[t];if(!r){e[t]={name:t,title:(0,h.titleCase)(t),files:[n]};return}let i=[...r.files??[]],a=i.findIndex(e=>e.path===n.path&&e.theme===n.theme);a>=0?i[a]=n:i.push(n),e[t]={...r,files:i}}async function be(e,t,n){let r=await B(e);for(let i of r){let r=(0,p.findFileName)(i,{withExtension:!1});r&&G(n,r,await W(i,e,t))}}async function K(e){let t={},n=me(e.options.iconsPath);for(let r of n){let n=pe(e.cwd,r);if(!(!(0,c.existsSync)(n)||!(0,l.isDirectory)(n)))try{let e=await(0,v.readdir)(n,{withFileTypes:!0});for(let r of e){if(r.name.startsWith(`.`))continue;let e=(0,m.joinPaths)(n,r.name);if(r.isDirectory()){if(he(r.name)){await be(e,r.name,t);continue}let n=await ye(e);if(n){let e=t[n.name];t[n.name]=e?L(n,e):n}continue}if(r.isFile()&&z(r.name)){let e=(0,p.findFileName)(r.name,{withExtension:!1});if(!e)continue;G(t,e,await W(r.name,n))}}}catch{continue}}return t}function q(e,t){let n=e[t];return(0,_.isSetString)(n)?n:void 0}function J(e){let t={};(0,_.isSetString)(e.name)&&(t.name=e.name),(0,_.isSetString)(e.description)&&(t.description=e.description),(0,_.isSetString)(e.homepage)&&(t.homepage=e.homepage);let n=T(e.repository);n&&(t.repository=n),(0,_.isSetString)(e.logo)&&(t.logo=e.logo);let r=e.razorwind,i={};if((0,g.isSetObject)(r)){let e=r,t=q(e,`title`),n=q(e,`name`),a=q(e,`description`),o=q(e,`homepage`),s=q(e,`logo`),c=T(e.repository);n&&(i.name=n),t&&(i.title=t),a&&(i.description=a),o&&(i.homepage=o),s&&(i.logo=s),c&&(i.repository=c)}return(0,o.defu)(i,t)}function Y(e){let t={};return(0,_.isSetString)(e.name)&&(t.name=e.name),(0,_.isSetString)(e.title)&&(t.title=e.title),(0,_.isSetString)(e.description)&&(t.description=e.description),(0,_.isSetString)(e.repository)&&(t.repository=e.repository),(0,_.isSetString)(e.homepage)&&(t.homepage=e.homepage),(0,_.isSetString)(e.logo)&&(t.logo=e.logo),t}async function X(e){let t=(0,m.joinPaths)(e,`package.json`);if(!(0,c.existsSync)(t))return{};let n;try{n=await(0,u.readJsonFile)(t)}catch{return{}}return J(n)}async function Z(e,t){let n=await X(e),r=Y(t);return(0,o.defu)(r,n)}const Q=w.default.homedir();async function $(e,t){let n=t.configFile&&(0,C.existsSync)((0,x.replacePath)(t.configFile,e))?(0,x.replacePath)(t.configFile,e):t.configFile&&(0,C.existsSync)(t.configFile)?t.configFile:(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.ts`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.ts`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.js`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.js`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.mts`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.mts`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.mjs`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.mjs`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.cjs`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.cjs`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.cts`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.cts`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.json`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.json`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.yaml`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.yaml`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.${t.mode}.yml`))?(0,m.joinPaths)(e,`razorwind.${t.mode}.yml`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.ts`))?(0,m.joinPaths)(e,`razorwind.config.ts`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.js`))?(0,m.joinPaths)(e,`razorwind.config.js`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.mts`))?(0,m.joinPaths)(e,`razorwind.config.mts`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.mjs`))?(0,m.joinPaths)(e,`razorwind.config.mjs`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.cjs`))?(0,m.joinPaths)(e,`razorwind.config.cjs`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.cts`))?(0,m.joinPaths)(e,`razorwind.config.cts`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.json`))?(0,m.joinPaths)(e,`razorwind.config.json`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.yaml`))?(0,m.joinPaths)(e,`razorwind.config.yaml`):(0,C.existsSync)((0,m.joinPaths)(e,`razorwind.config.yml`))?(0,m.joinPaths)(e,`razorwind.config.yml`):void 0,r=(0,ee.getEnvPaths)({orgId:`storm-software`,appId:`razorwind`,workspaceRoot:e}),i={fsCache:r.cache},a=(0,ne.createJiti)(e,i),s={};if(n){let r=await a.import(a.esmResolve(n));if(r?.default){let i={};(0,te.isFunction)(r.default)?i=await Promise.resolve(r.default({cwd:e,mode:t.mode??`development`})):((0,g.isSetObject)(r.default)||Array.isArray(r.default))&&(i=r.default),((0,g.isSetObject)(i)||Array.isArray(i))&&(s={...i,configFile:n})}}let[c,l,u]=await Promise.all([(0,S.loadConfig)({cwd:e,name:`razorwind`,envName:t.mode,globalRc:!0,packageJson:`razorwind`,dotenv:!0,jitiOptions:i}),(0,S.loadConfig)({cwd:r.config,name:`razorwind`,envName:t.mode,dotenv:!0,jitiOptions:i}),(0,S.loadConfig)({cwd:Q,name:`razorwind`,envName:t.mode,dotenv:!0,jitiOptions:i})]),d=(0,o.defu)({cwd:e,envPaths:{...r,home:Q}},t,s,(0,g.isSetObject)(c?.config)?{...c.config}:{},(0,g.isSetObject)(l?.config)?{...l.config}:{},(0,g.isSetObject)(u?.config)?{...u.config}:{},{componentsPath:e,iconsPath:(0,m.joinPaths)(e,`assets/icons`),plugins:[]});if(Array.isArray(d.componentsPath)){let t=d.componentsPath.filter(_.isSetString).map(e=>(0,b.findFilePath)(e));d.componentsPath=t.length>0?t:e}else d.componentsPath=(0,_.isSetString)(d.componentsPath)?(0,b.findFilePath)(d.componentsPath):e;if(Array.isArray(d.iconsPath)){let t=d.iconsPath.filter(_.isSetString).map(e=>(0,b.findFilePath)(e));d.iconsPath=t.length>0?t:(0,m.joinPaths)(e,`assets/icons`)}else d.iconsPath=(0,_.isSetString)(d.iconsPath)?(0,b.findFilePath)(d.iconsPath):(0,m.joinPaths)(e,`assets/icons`);return Array.isArray(d.plugins)||(d.plugins=[]),d}function xe(e){return e}const Se=(0,i.defineGenerator)({meta:{name:`razorwind`,title:`Razorwind`,description:`A generator that uses Razorwind to generate design system code from design tokens, components, and icons.`,version:re,tags:[`razorwind`,`dtcg`]},schema:(0,i.defineSchema)({schema:t.t}),input:async e=>{let t=(0,i.useExecution)();if(t.options=await $(t.cwd,e),t.options.plugins.length===0)throw Error(`Razorwind will not generate any code - no plugins configured. Please add at least one plugin to the configuration.`);n.l(t.options.plugins,s.default);let r=t.options.tokens;(!r||(0,a.isEmptyObject)(r))&&(r=await n.t(t));let c={...await Z(t.cwd,t.options),tokens:r??{},components:(0,o.defu)(t.options.components??{},await F(t)??{}),icons:(0,o.defu)(t.options.icons??{},await K(t)??{})};for(let e of t.options.plugins.filter(e=>e.extract))c=await e.extract(c,t.options);if(!c.tokens||(0,a.isEmptyObject)(c.tokens))throw Error(`Unable to load design tokens for the current workspace. Please ensure that Razorwind is configured correctly and that the tokens are available.`);for(let e of t.options.plugins.filter(e=>e.validate))await e.validate(c,t.options);return c},generator:async e=>{let t=(0,i.useExecution)(),n={};for(let r of t.options.plugins.filter(e=>e.generate)){let i=await r.generate(e,t.options);n=(0,o.defu)(i,n)}return n}});exports.DEFAULT_TOKEN_PATH_CANDIDATES=n.g,exports.RAZORWIND_INFER_PREPROCESSOR=n.a,exports.THEME_BASENAME_PATTERN=n._,exports.TOKEN_DIRECTORY_GLOB=n.v,exports.TOKEN_FILE_EXTENSIONS=n.y,exports.TYPE_PATH_HINTS=n.x,exports.WINDIE_PARSERS=n.b,exports.razorwindParsers=n.b,exports.defineConfig=xe,exports.definePlugin=r.definePlugin,exports.generator=Se,exports.getRazorwindParserHooks=n.o,exports.getRazorwindPreprocessorHooks=n.s,exports.inferTypeFromPath=n.f,exports.inferValue=n.p,exports.loadComponents=F,exports.loadIcons=K,exports.loadSchemaMetaFromPackageJson=X,exports.loadTokens=n.t,exports.loadTokensOrThrow=n.n,exports.nestFlatTokens=n.m,exports.normalizeRepository=T,exports.normalizeTokenTree=n.h,exports.parseCssCustomProperties=n.d,exports.razorwindInferPreprocessor=n.c,exports.registerRazorwindHooks=n.l,exports.registerRazorwindParsers=n.u,exports.resolveConfig=$,exports.resolveSchemaMeta=Z,exports.resolveTokensSource=n.r,exports.schemaMetaFromConfig=Y,exports.schemaMetaFromPackageJson=J,exports.themeKeyFromPath=n.i;
|
package/dist/index.d.cts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { a as Icons, f as Components, t as Schema } from "./schema-
|
|
2
|
-
import "./index-
|
|
3
|
-
import { a as UserConfigFn, c as UserConfigParams, d as TokensPreprocessor, i as UserConfigExport, l as Plugin, n as Options, o as UserConfigFnObject, r as UserConfig, s as UserConfigFnPromise, t as Config, u as TokensParser } from "./config-
|
|
4
|
-
import { t as definePlugin } from "./plugin-
|
|
5
|
-
import { C as RazorwindParserName, D as TOKEN_PARSER_NAMES, E as TOKEN_FILE_EXTENSIONS, O as TYPE_PATH_HINTS, S as DEFAULT_TOKEN_PATH_CANDIDATES, T as TOKEN_DIRECTORY_GLOB, _ as inferTypeFromPath, a as razorwindInferPreprocessor, b as normalizeTokenTree, c as LoadTokensOptions, d as loadTokensOrThrow, f as ResolveTokensPathOptions, g as InferredTokenType, h as themeKeyFromPath, i as getRazorwindPreprocessorHooks, l as LoadedTokens, m as resolveTokensSource, n as StyleDictionaryRegisterTarget, o as registerRazorwindHooks, p as ResolvedTokensSource, r as getRazorwindParserHooks, s as registerRazorwindParsers, t as RAZORWIND_INFER_PREPROCESSOR, u as loadTokens, v as inferValue, w as THEME_BASENAME_PATTERN, x as parseCssCustomProperties, y as nestFlatTokens } from "./index-
|
|
1
|
+
import { a as Icons, f as Components, t as Schema } from "./schema-BihaPsfF.cjs";
|
|
2
|
+
import "./index-Bmg0_4Yr.cjs";
|
|
3
|
+
import { a as UserConfigFn, c as UserConfigParams, d as TokensPreprocessor, i as UserConfigExport, l as Plugin, n as Options, o as UserConfigFnObject, r as UserConfig, s as UserConfigFnPromise, t as Config, u as TokensParser } from "./config-76inX2KE.cjs";
|
|
4
|
+
import { t as definePlugin } from "./plugin-CEq_6bcb.cjs";
|
|
5
|
+
import { C as RazorwindParserName, D as TOKEN_PARSER_NAMES, E as TOKEN_FILE_EXTENSIONS, O as TYPE_PATH_HINTS, S as DEFAULT_TOKEN_PATH_CANDIDATES, T as TOKEN_DIRECTORY_GLOB, _ as inferTypeFromPath, a as razorwindInferPreprocessor, b as normalizeTokenTree, c as LoadTokensOptions, d as loadTokensOrThrow, f as ResolveTokensPathOptions, g as InferredTokenType, h as themeKeyFromPath, i as getRazorwindPreprocessorHooks, l as LoadedTokens, m as resolveTokensSource, n as StyleDictionaryRegisterTarget, o as registerRazorwindHooks, p as ResolvedTokensSource, r as getRazorwindParserHooks, s as registerRazorwindParsers, t as RAZORWIND_INFER_PREPROCESSOR, u as loadTokens, v as inferValue, w as THEME_BASENAME_PATTERN, x as parseCssCustomProperties, y as nestFlatTokens } from "./index-BRN9L8Lx.cjs";
|
|
6
6
|
import StyleDictionary from "style-dictionary";
|
|
7
7
|
import { ExecutionContext, GeneratorConfig } from "@power-plant/core";
|
|
8
8
|
//#region src/lib/resolve-config.d.ts
|
|
@@ -69,6 +69,33 @@ declare function loadComponents(context: ExecutionContext<Schema, Config, void>)
|
|
|
69
69
|
*/
|
|
70
70
|
declare function loadIcons(context: ExecutionContext<Schema, Config, void>): Promise<Icons>;
|
|
71
71
|
//#endregion
|
|
72
|
+
//#region src/lib/meta/load.d.ts
|
|
73
|
+
/** Design-system identity fields mirrored on {@link Schema}. */
|
|
74
|
+
type SchemaMeta = Pick<Schema, "name" | "title" | "repository" | "homepage" | "description" | "logo">;
|
|
75
|
+
/**
|
|
76
|
+
* Map npm `package.json` fields (and optional `razorwind` object) into
|
|
77
|
+
* design-system {@link SchemaMeta}.
|
|
78
|
+
*/
|
|
79
|
+
declare function schemaMetaFromPackageJson(pkg: Record<string, unknown>): SchemaMeta;
|
|
80
|
+
/**
|
|
81
|
+
* Copy identity fields from resolved {@link UserConfig} onto {@link SchemaMeta}.
|
|
82
|
+
*/
|
|
83
|
+
declare function schemaMetaFromConfig(config: UserConfig): SchemaMeta;
|
|
84
|
+
/**
|
|
85
|
+
* Load design-system metadata from the workspace root `package.json`.
|
|
86
|
+
*/
|
|
87
|
+
declare function loadSchemaMetaFromPackageJson(cwd: string): Promise<SchemaMeta>;
|
|
88
|
+
/**
|
|
89
|
+
* Resolve Schema identity: UserConfig overlays workspace `package.json`.
|
|
90
|
+
*/
|
|
91
|
+
declare function resolveSchemaMeta(cwd: string, config: UserConfig): Promise<SchemaMeta>;
|
|
92
|
+
//#endregion
|
|
93
|
+
//#region src/lib/meta/normalize-repository.d.ts
|
|
94
|
+
/**
|
|
95
|
+
* Normalize npm `repository` field (string or `{ url }`) to a URL string.
|
|
96
|
+
*/
|
|
97
|
+
declare function normalizeRepository(value: unknown): string | undefined;
|
|
98
|
+
//#endregion
|
|
72
99
|
//#region src/types/base.d.ts
|
|
73
100
|
type Generator<TOptions extends object = object> = GeneratorConfig<Schema, TOptions> & {
|
|
74
101
|
name: string;
|
|
@@ -95,5 +122,5 @@ declare module "@power-plant/core" {
|
|
|
95
122
|
*/
|
|
96
123
|
declare const generator: import("@power-plant/core").GeneratorConfigObject<Schema, Options, any>;
|
|
97
124
|
//#endregion
|
|
98
|
-
export { type Config, DEFAULT_TOKEN_PATH_CANDIDATES, type Generator, type InferredTokenType, type LoadTokensOptions, type LoadedTokens, type Options, type Plugin, RAZORWIND_INFER_PREPROCESSOR, type RazorwindParserName, type ResolveTokensPathOptions, type ResolvedTokensSource, type StyleDictionaryRegisterTarget, THEME_BASENAME_PATTERN, TOKEN_DIRECTORY_GLOB, TOKEN_FILE_EXTENSIONS, TYPE_PATH_HINTS, type TokensParser, type TokensPreprocessor, type UserConfig, type UserConfigExport, type UserConfigFn, type UserConfigFnObject, type UserConfigFnPromise, type UserConfigParams, TOKEN_PARSER_NAMES as WINDIE_PARSERS, TOKEN_PARSER_NAMES as razorwindParsers, defineConfig, definePlugin, generator, getRazorwindParserHooks, getRazorwindPreprocessorHooks, inferTypeFromPath, inferValue, loadComponents, loadIcons, loadTokens, loadTokensOrThrow, nestFlatTokens, normalizeTokenTree, parseCssCustomProperties, razorwindInferPreprocessor, registerRazorwindHooks, registerRazorwindParsers, resolveConfig, resolveTokensSource, themeKeyFromPath };
|
|
125
|
+
export { type Config, DEFAULT_TOKEN_PATH_CANDIDATES, type Generator, type InferredTokenType, type LoadTokensOptions, type LoadedTokens, type Options, type Plugin, RAZORWIND_INFER_PREPROCESSOR, type RazorwindParserName, type ResolveTokensPathOptions, type ResolvedTokensSource, type SchemaMeta, type StyleDictionaryRegisterTarget, THEME_BASENAME_PATTERN, TOKEN_DIRECTORY_GLOB, TOKEN_FILE_EXTENSIONS, TYPE_PATH_HINTS, type TokensParser, type TokensPreprocessor, type UserConfig, type UserConfigExport, type UserConfigFn, type UserConfigFnObject, type UserConfigFnPromise, type UserConfigParams, TOKEN_PARSER_NAMES as WINDIE_PARSERS, TOKEN_PARSER_NAMES as razorwindParsers, defineConfig, definePlugin, generator, getRazorwindParserHooks, getRazorwindPreprocessorHooks, inferTypeFromPath, inferValue, loadComponents, loadIcons, loadSchemaMetaFromPackageJson, loadTokens, loadTokensOrThrow, nestFlatTokens, normalizeRepository, normalizeTokenTree, parseCssCustomProperties, razorwindInferPreprocessor, registerRazorwindHooks, registerRazorwindParsers, resolveConfig, resolveSchemaMeta, resolveTokensSource, schemaMetaFromConfig, schemaMetaFromPackageJson, themeKeyFromPath };
|
|
99
126
|
//# sourceMappingURL=index.d.cts.map
|
package/dist/index.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/lib/resolve-config.ts","../src/config.ts","../src/lib/components/load.ts","../src/lib/icons/load.ts","../src/types/base.ts","../src/index.ts"],"mappings":";;;;;;;;;;;;;;;iBA8CsB,cACpB,aACA,SAAS,UACR,QAAQ;;;;;;;;;;;;;;;;;;;;;;;iBCEK,aAAa,QAAQ,aAAa;iBAClC,aAAa,QAAQ,eAAe;iBACpC,aAAa,QAAQ,QAAQ,cAAc,QAAQ;iBACnD,aACd,QAAQ,QAAQ,gBACf,QAAQ;iBACK,aAAa,QAAQ,qBAAqB;iBAC1C,aAAa,QAAQ,sBAAsB;iBAC3C,aAAa,QAAQ,eAAe;iBACpC,aAAa,QAAQ,mBAAmB;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/lib/resolve-config.ts","../src/config.ts","../src/lib/components/load.ts","../src/lib/icons/load.ts","../src/lib/meta/load.ts","../src/lib/meta/normalize-repository.ts","../src/types/base.ts","../src/index.ts"],"mappings":";;;;;;;;;;;;;;;iBA8CsB,cACpB,aACA,SAAS,UACR,QAAQ;;;;;;;;;;;;;;;;;;;;;;;iBCEK,aAAa,QAAQ,aAAa;iBAClC,aAAa,QAAQ,eAAe;iBACpC,aAAa,QAAQ,QAAQ,cAAc,QAAQ;iBACnD,aACd,QAAQ,QAAQ,gBACf,QAAQ;iBACK,aAAa,QAAQ,qBAAqB;iBAC1C,aAAa,QAAQ,sBAAsB;iBAC3C,aAAa,QAAQ,eAAe;iBACpC,aAAa,QAAQ,mBAAmB;;;;;;;;;;;;;iBCqalC,eACpB,SAAS,iBAAiB,QAAQ,gBACjC,QAAQ;;;;;;;;;;;iBCjGW,UACpB,SAAS,iBAAiB,QAAQ,gBACjC,QAAQ;;;;KCvWC,aAAa,KACvB;;;;;iBAgBc,0BACd,KAAK,0BACJ;;;;iBA8Da,qBAAqB,QAAQ,aAAa;;;;iBA4BpC,8BACpB,cACC,QAAQ;;;;iBAmBW,kBACpB,aACA,QAAQ,aACP,QAAQ;;;;;;iBC1IK,oBAAoB;;;KCHxB,UAAU,oCAAoC,gBACxD,QACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;;YCKU;IACR,IAAI;;;;;;;;;cAcK,uCAAS,sBAAA,QAAA"}
|
package/dist/index.d.mts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { a as Icons, f as Components, t as Schema } from "./schema-
|
|
2
|
-
import "./index-
|
|
3
|
-
import { a as UserConfigFn, c as UserConfigParams, d as TokensPreprocessor, i as UserConfigExport, l as Plugin, n as Options, o as UserConfigFnObject, r as UserConfig, s as UserConfigFnPromise, t as Config, u as TokensParser } from "./config-
|
|
4
|
-
import { t as definePlugin } from "./plugin-
|
|
5
|
-
import { C as RazorwindParserName, D as TOKEN_PARSER_NAMES, E as TOKEN_FILE_EXTENSIONS, O as TYPE_PATH_HINTS, S as DEFAULT_TOKEN_PATH_CANDIDATES, T as TOKEN_DIRECTORY_GLOB, _ as inferTypeFromPath, a as razorwindInferPreprocessor, b as normalizeTokenTree, c as LoadTokensOptions, d as loadTokensOrThrow, f as ResolveTokensPathOptions, g as InferredTokenType, h as themeKeyFromPath, i as getRazorwindPreprocessorHooks, l as LoadedTokens, m as resolveTokensSource, n as StyleDictionaryRegisterTarget, o as registerRazorwindHooks, p as ResolvedTokensSource, r as getRazorwindParserHooks, s as registerRazorwindParsers, t as RAZORWIND_INFER_PREPROCESSOR, u as loadTokens, v as inferValue, w as THEME_BASENAME_PATTERN, x as parseCssCustomProperties, y as nestFlatTokens } from "./index-
|
|
1
|
+
import { a as Icons, f as Components, t as Schema } from "./schema-BihaPsfF.mjs";
|
|
2
|
+
import "./index-DB9GwBAG.mjs";
|
|
3
|
+
import { a as UserConfigFn, c as UserConfigParams, d as TokensPreprocessor, i as UserConfigExport, l as Plugin, n as Options, o as UserConfigFnObject, r as UserConfig, s as UserConfigFnPromise, t as Config, u as TokensParser } from "./config-CWYJH70g.mjs";
|
|
4
|
+
import { t as definePlugin } from "./plugin-w3-Ub3fa.mjs";
|
|
5
|
+
import { C as RazorwindParserName, D as TOKEN_PARSER_NAMES, E as TOKEN_FILE_EXTENSIONS, O as TYPE_PATH_HINTS, S as DEFAULT_TOKEN_PATH_CANDIDATES, T as TOKEN_DIRECTORY_GLOB, _ as inferTypeFromPath, a as razorwindInferPreprocessor, b as normalizeTokenTree, c as LoadTokensOptions, d as loadTokensOrThrow, f as ResolveTokensPathOptions, g as InferredTokenType, h as themeKeyFromPath, i as getRazorwindPreprocessorHooks, l as LoadedTokens, m as resolveTokensSource, n as StyleDictionaryRegisterTarget, o as registerRazorwindHooks, p as ResolvedTokensSource, r as getRazorwindParserHooks, s as registerRazorwindParsers, t as RAZORWIND_INFER_PREPROCESSOR, u as loadTokens, v as inferValue, w as THEME_BASENAME_PATTERN, x as parseCssCustomProperties, y as nestFlatTokens } from "./index-C0PpOx6h.mjs";
|
|
6
6
|
import { ExecutionContext, GeneratorConfig } from "@power-plant/core";
|
|
7
7
|
import StyleDictionary from "style-dictionary";
|
|
8
8
|
//#region src/lib/resolve-config.d.ts
|
|
@@ -69,6 +69,33 @@ declare function loadComponents(context: ExecutionContext<Schema, Config, void>)
|
|
|
69
69
|
*/
|
|
70
70
|
declare function loadIcons(context: ExecutionContext<Schema, Config, void>): Promise<Icons>;
|
|
71
71
|
//#endregion
|
|
72
|
+
//#region src/lib/meta/load.d.ts
|
|
73
|
+
/** Design-system identity fields mirrored on {@link Schema}. */
|
|
74
|
+
type SchemaMeta = Pick<Schema, "name" | "title" | "repository" | "homepage" | "description" | "logo">;
|
|
75
|
+
/**
|
|
76
|
+
* Map npm `package.json` fields (and optional `razorwind` object) into
|
|
77
|
+
* design-system {@link SchemaMeta}.
|
|
78
|
+
*/
|
|
79
|
+
declare function schemaMetaFromPackageJson(pkg: Record<string, unknown>): SchemaMeta;
|
|
80
|
+
/**
|
|
81
|
+
* Copy identity fields from resolved {@link UserConfig} onto {@link SchemaMeta}.
|
|
82
|
+
*/
|
|
83
|
+
declare function schemaMetaFromConfig(config: UserConfig): SchemaMeta;
|
|
84
|
+
/**
|
|
85
|
+
* Load design-system metadata from the workspace root `package.json`.
|
|
86
|
+
*/
|
|
87
|
+
declare function loadSchemaMetaFromPackageJson(cwd: string): Promise<SchemaMeta>;
|
|
88
|
+
/**
|
|
89
|
+
* Resolve Schema identity: UserConfig overlays workspace `package.json`.
|
|
90
|
+
*/
|
|
91
|
+
declare function resolveSchemaMeta(cwd: string, config: UserConfig): Promise<SchemaMeta>;
|
|
92
|
+
//#endregion
|
|
93
|
+
//#region src/lib/meta/normalize-repository.d.ts
|
|
94
|
+
/**
|
|
95
|
+
* Normalize npm `repository` field (string or `{ url }`) to a URL string.
|
|
96
|
+
*/
|
|
97
|
+
declare function normalizeRepository(value: unknown): string | undefined;
|
|
98
|
+
//#endregion
|
|
72
99
|
//#region src/types/base.d.ts
|
|
73
100
|
type Generator<TOptions extends object = object> = GeneratorConfig<Schema, TOptions> & {
|
|
74
101
|
name: string;
|
|
@@ -95,5 +122,5 @@ declare module "@power-plant/core" {
|
|
|
95
122
|
*/
|
|
96
123
|
declare const generator: import("@power-plant/core").GeneratorConfigObject<Schema, Options, any>;
|
|
97
124
|
//#endregion
|
|
98
|
-
export { type Config, DEFAULT_TOKEN_PATH_CANDIDATES, type Generator, type InferredTokenType, type LoadTokensOptions, type LoadedTokens, type Options, type Plugin, RAZORWIND_INFER_PREPROCESSOR, type RazorwindParserName, type ResolveTokensPathOptions, type ResolvedTokensSource, type StyleDictionaryRegisterTarget, THEME_BASENAME_PATTERN, TOKEN_DIRECTORY_GLOB, TOKEN_FILE_EXTENSIONS, TYPE_PATH_HINTS, type TokensParser, type TokensPreprocessor, type UserConfig, type UserConfigExport, type UserConfigFn, type UserConfigFnObject, type UserConfigFnPromise, type UserConfigParams, TOKEN_PARSER_NAMES as WINDIE_PARSERS, TOKEN_PARSER_NAMES as razorwindParsers, defineConfig, definePlugin, generator, getRazorwindParserHooks, getRazorwindPreprocessorHooks, inferTypeFromPath, inferValue, loadComponents, loadIcons, loadTokens, loadTokensOrThrow, nestFlatTokens, normalizeTokenTree, parseCssCustomProperties, razorwindInferPreprocessor, registerRazorwindHooks, registerRazorwindParsers, resolveConfig, resolveTokensSource, themeKeyFromPath };
|
|
125
|
+
export { type Config, DEFAULT_TOKEN_PATH_CANDIDATES, type Generator, type InferredTokenType, type LoadTokensOptions, type LoadedTokens, type Options, type Plugin, RAZORWIND_INFER_PREPROCESSOR, type RazorwindParserName, type ResolveTokensPathOptions, type ResolvedTokensSource, type SchemaMeta, type StyleDictionaryRegisterTarget, THEME_BASENAME_PATTERN, TOKEN_DIRECTORY_GLOB, TOKEN_FILE_EXTENSIONS, TYPE_PATH_HINTS, type TokensParser, type TokensPreprocessor, type UserConfig, type UserConfigExport, type UserConfigFn, type UserConfigFnObject, type UserConfigFnPromise, type UserConfigParams, TOKEN_PARSER_NAMES as WINDIE_PARSERS, TOKEN_PARSER_NAMES as razorwindParsers, defineConfig, definePlugin, generator, getRazorwindParserHooks, getRazorwindPreprocessorHooks, inferTypeFromPath, inferValue, loadComponents, loadIcons, loadSchemaMetaFromPackageJson, loadTokens, loadTokensOrThrow, nestFlatTokens, normalizeRepository, normalizeTokenTree, parseCssCustomProperties, razorwindInferPreprocessor, registerRazorwindHooks, registerRazorwindParsers, resolveConfig, resolveSchemaMeta, resolveTokensSource, schemaMetaFromConfig, schemaMetaFromPackageJson, themeKeyFromPath };
|
|
99
126
|
//# sourceMappingURL=index.d.mts.map
|
package/dist/index.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/lib/resolve-config.ts","../src/config.ts","../src/lib/components/load.ts","../src/lib/icons/load.ts","../src/types/base.ts","../src/index.ts"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/lib/resolve-config.ts","../src/config.ts","../src/lib/components/load.ts","../src/lib/icons/load.ts","../src/lib/meta/load.ts","../src/lib/meta/normalize-repository.ts","../src/types/base.ts","../src/index.ts"],"mappings":""}
|
package/dist/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e,c as t,i as n,l as r,r as i,s as a}from"./schema-jfwKMfbW.mjs";import{_ as o,a as s,b as c,c as l,d as u,f as ee,g as te,h as ne,i as re,l as d,m as ie,n as ae,o as oe,p as se,r as ce,s as le,t as f,u as ue,v as de,x as fe,y as pe}from"./tokens-DQh8MSxD.mjs";import{definePlugin as me}from"./plugin.mjs";import{defineGenerator as he,defineSchema as ge,useExecution as p}from"@power-plant/core";import{isEmptyObject as m}from"@stryke/type-checks/is-empty-object";import{createDefu as h,defu as g}from"defu";import _e from"style-dictionary";import{existsSync as _}from"@stryke/fs/exists";import{isDirectory as v}from"@stryke/fs/is-file";import{readJsonFile as y}from"@stryke/fs/json";import{listFiles as ve}from"@stryke/fs/list-files";import{appendPath as b}from"@stryke/path/append";import{findFileExtensionSafe as x,findFileName as S,findFolderName as C}from"@stryke/path/file-path-fns";import{joinPaths as w}from"@stryke/path/join";import{titleCase as T}from"@stryke/string-format/title-case";import{isSetObject as E}from"@stryke/type-checks/is-set-object";import{isSetString as D}from"@stryke/type-checks/is-set-string";import{readFile as O,readdir as k}from"node:fs/promises";import{isAbsolute as A,resolve as j}from"node:path";import{getEnvPaths as ye}from"@stryke/env/get-env-paths";import{findFilePath as M}from"@stryke/path/find";import{replacePath as N}from"@stryke/path/replace";import{isFunction as be}from"@stryke/type-checks/is-function";import{loadConfig as P}from"c12";import{createJiti as xe}from"jiti";import{existsSync as F}from"node:fs";import Se from"node:os";var Ce=`0.0.33`;const we=t.partial(),I=new Set([`tsx`,`jsx`,`ts`,`js`,`mdx`,`md`,`css`,`html`,`txt`]),L=h((e,t,n)=>Array.isArray(n)?(e[t]=n,!0):!1);function Te(e,t){return A(t)?t:j(e,t)}function Ee(e){return Array.isArray(e)?e.filter(D):D(e)?[e]:[]}function De(e){if(D(e))return e;if(E(e)&&`url`in e&&D(e.url))return e.url}function R(e){let t=e.toLowerCase();if(I.has(t))return t}function Oe(e){let t=x(e)?.toLowerCase();return!!(t&&I.has(t))}function z(e){if(!e)return;let t=a.safeParse(e);if(t.success)return[t.data];if(!Array.isArray(e))return;let n=[];for(let t of e){let e=a.safeParse(t);e.success&&n.push(e.data)}return n.length>0?n:void 0}function B(e){if(!e)return;let t=r.safeParse(e);if(t.success)return[t.data];if(!Array.isArray(e))return;let n=[];for(let t of e){if(D(t)){let e=S(t,{withExtension:!1})||t,i=r.safeParse({name:e,path:t});i.success&&n.push(i.data);continue}let e=r.safeParse(t);e.success&&n.push(e.data)}return n.length>0?n:void 0}function V(e){if(!E(e))return;let{files:t,usage:n,...r}=e,i=we.safeParse(r);if(i.success)return Object.keys(i.data).length>0?i.data:void 0}function H(e){return E(e)&&`path`in e}async function ke(e){let t=w(e,`package.json`);if(!_(t))return;let n;try{n=await y(t)}catch{return}let r={};D(n.name)&&(r.name=n.name,r.title=n.name),D(n.description)&&(r.description=n.description),D(n.version)&&(r.version=n.version),D(n.homepage)&&(r.homepage=n.homepage);let i=De(n.repository);if(i&&(r.repository=i),E(n.dependencies)&&(r.dependencies=n.dependencies),E(n.devDependencies)&&(r.devDependencies=n.devDependencies),Array.isArray(n.keywords)){let e=n.keywords.filter(D);e.length>0&&(r.tags=e)}let a=n.razorwind,o,s,c;H(a)?s=z(a):E(a)&&(o=V(a),`files`in a&&(s=z(a.files)),`usage`in a&&(c=B(a.usage)));let l=L(o??{},r);return s?.length&&(l.files=s),c?.length&&(l.usage=c),Object.keys(l).length>0?l:void 0}async function Ae(e){let t=w(e,`component.json`);if(!_(t))return;let n;try{n=await y(t)}catch{return}if(H(n)||Array.isArray(n)){let e=z(n);if(e)return{files:e}}if(!E(n))return;let r=V(n)??{},i=`files`in n?z(n.files):void 0,a=`usage`in n?B(n.usage):void 0;return i?.length&&(r.files=i),a?.length&&(r.usage=a),Object.keys(r).length>0?r:void 0}async function je(e){try{return(await k(e,{withFileTypes:!0})).filter(e=>e.isFile()&&!e.name.startsWith(`.`)&&Oe(e.name)).map(e=>e.name).toSorted((e,t)=>e.localeCompare(t))}catch{return[]}}async function Me(e,t){if(t?.length)return Promise.all(t.map(async t=>{let n=b(t.path,e),r=x(t.path)??``,i=t.language??R(r),a=t.name||S(t.path,{withExtension:!1})||t.path,o=t.content===void 0?_(n)?await O(n,`utf8`):void 0:t.content;return{...t,name:a,path:n,...i?{language:i}:{},...o===void 0?{}:{content:o}}}));let n=w(e,`usage`);if(!_(n)||!v(n))return;let r=await je(n);if(r.length!==0)return Promise.all(r.map(async e=>{let t=w(n,e),r=R(x(e)??``),i=S(e,{withExtension:!1})||e;return{name:i,title:T(i),path:t,content:await O(t,`utf8`),...r?{language:r}:{}}}))}async function Ne(e,t){let n=t??(await ve(e)).filter(e=>S(e,{withExtension:!1})===`index`);return Promise.all(n.filter(Boolean).map(async t=>typeof t==`string`?{type:/[tj]sx$/.test(x(t))?`component`:`file`,path:t,content:await O(b(t,e),`utf8`)}:{type:/[tj]sx$/.test(x(t.path))?`component`:`file`,...t,content:t.content?t.content:t.path?await O(b(t.path,e),`utf8`):void 0,path:b(t.path,e)}))}async function Pe(e){let n=await ke(e),r=await Ae(e);if(!n&&!r)return;let i=L(r??{},n??{}),a=D(i.name)?i.name:C(e),o=D(i.title)?i.title:T(a),s=t.safeParse({...i,name:a,title:o});if(!s.success)return;let c=await Me(e,s.data.usage);return{...s.data,files:await Ne(e,s.data.files),...c?.length?{usage:c}:{}}}async function U(e){let t={},n=Ee(e.options.componentsPath);for(let r of n){let n=Te(e.cwd,r);if(!(!_(n)||!v(n)))try{let e=await k(n,{withFileTypes:!0});for(let r of e){if(!r.isDirectory()||r.name.startsWith(`.`))continue;let e=await Pe(w(n,r.name));e&&(t[e.name]=e)}}catch{continue}}return t}const Fe=e.partial(),W=new Set([`svg`,`png`,`webp`,`jpg`,`jpeg`,`gif`,`ico`]),G=h((e,t,n)=>Array.isArray(n)?(e[t]=n,!0):!1);function Ie(e,t){return A(t)?t:j(e,t)}function Le(e){return Array.isArray(e)?e.filter(D):D(e)?[e]:[]}function Re(e){if(D(e))return e;if(E(e)&&`url`in e&&D(e.url))return e.url}function K(e){let t=e.toLowerCase();if(W.has(t))return t}function q(e){let t=x(e)?.toLowerCase();return!!(t&&W.has(t))}function ze(e){return o.test(e)}async function J(e){try{return(await k(e,{withFileTypes:!0})).filter(e=>e.isFile()&&q(e.name)).map(e=>e.name)}catch{return[]}}function Y(e){if(!e)return;let t=n.safeParse(e);if(t.success)return[t.data];if(!Array.isArray(e))return;let r=[];for(let t of e){let e=n.safeParse(t);e.success&&r.push(e.data)}return r.length>0?r:void 0}function X(e){if(!E(e))return;let t=Fe.safeParse(e);if(t.success)return Object.keys(t.data).length>0?t.data:void 0}function Z(e){return E(e)&&`path`in e}async function Q(e,t,n){let r=b(e,t),i=K(x(e)??``)??`file`,a=i===`svg`?await O(r,`utf8`):void 0;return{path:r,type:i,...n?{theme:n}:{},...a===void 0?{}:{content:a}}}async function Be(e){let t=w(e,`package.json`);if(!_(t))return;let n;try{n=await y(t)}catch{return}let r={};D(n.name)&&(r.name=n.name,r.title=n.name),D(n.description)&&(r.description=n.description),D(n.version)&&(r.version=n.version),D(n.homepage)&&(r.homepage=n.homepage);let i=Re(n.repository);if(i&&(r.repository=i),Array.isArray(n.keywords)){let e=n.keywords.filter(D);e.length>0&&(r.tags=e)}let a=n.razorwind,o,s;Z(a)?s=Y(a):E(a)&&(o=X(a),`files`in a&&(s=Y(a.files)));let c=G(o??{},r);return s?.length&&(c.files=s),Object.keys(c).length>0?c:void 0}async function Ve(e){let t=w(e,`icon.json`);if(!_(t))return;let n;try{n=await y(t)}catch{return}if(Z(n)||Array.isArray(n)){let e=Y(n);if(e)return{files:e}}return X(n)}async function He(e,t){if(t?.length)return Promise.all(t.map(async t=>{let n=b(t.path,e),r=x(t.path)??``,i=t.type??K(r)??`file`,a=t.content===void 0?i===`svg`?await O(n,`utf8`):void 0:t.content;return{...t,type:i,path:n,...a===void 0?{}:{content:a}}}));let n=await J(e);return Promise.all(n.map(t=>Q(t,e)))}async function Ue(t){let n=await Be(t),r=await Ve(t),i=await J(t);if(!n&&!r&&i.length===0)return;let a=G(r??{},n??{}),o=D(a.name)?a.name:C(t),s=D(a.title)?a.title:T(o),c=e.safeParse({...a,name:o,title:s});if(c.success)return{...c.data,files:await He(t,c.data.files)}}function $(e,t,n){let r=e[t];if(!r){e[t]={name:t,title:T(t),files:[n]};return}let i=[...r.files??[]],a=i.findIndex(e=>e.path===n.path&&e.theme===n.theme);a>=0?i[a]=n:i.push(n),e[t]={...r,files:i}}async function We(e,t,n){let r=await J(e);for(let i of r){let r=S(i,{withExtension:!1});r&&$(n,r,await Q(i,e,t))}}async function Ge(e){let t={},n=Le(e.options.iconsPath);for(let r of n){let n=Ie(e.cwd,r);if(!(!_(n)||!v(n)))try{let e=await k(n,{withFileTypes:!0});for(let r of e){if(r.name.startsWith(`.`))continue;let e=w(n,r.name);if(r.isDirectory()){if(ze(r.name)){await We(e,r.name,t);continue}let n=await Ue(e);if(n){let e=t[n.name];t[n.name]=e?G(n,e):n}continue}if(r.isFile()&&q(r.name)){let e=S(r.name,{withExtension:!1});if(!e)continue;$(t,e,await Q(r.name,n))}}}catch{continue}}return t}const Ke=Se.homedir();async function qe(e,t){let n=t.configFile&&F(N(t.configFile,e))?N(t.configFile,e):t.configFile&&F(t.configFile)?t.configFile:F(w(e,`razorwind.${t.mode}.ts`))?w(e,`razorwind.${t.mode}.ts`):F(w(e,`razorwind.${t.mode}.js`))?w(e,`razorwind.${t.mode}.js`):F(w(e,`razorwind.${t.mode}.mts`))?w(e,`razorwind.${t.mode}.mts`):F(w(e,`razorwind.${t.mode}.mjs`))?w(e,`razorwind.${t.mode}.mjs`):F(w(e,`razorwind.${t.mode}.cjs`))?w(e,`razorwind.${t.mode}.cjs`):F(w(e,`razorwind.${t.mode}.cts`))?w(e,`razorwind.${t.mode}.cts`):F(w(e,`razorwind.${t.mode}.json`))?w(e,`razorwind.${t.mode}.json`):F(w(e,`razorwind.${t.mode}.yaml`))?w(e,`razorwind.${t.mode}.yaml`):F(w(e,`razorwind.${t.mode}.yml`))?w(e,`razorwind.${t.mode}.yml`):F(w(e,`razorwind.config.ts`))?w(e,`razorwind.config.ts`):F(w(e,`razorwind.config.js`))?w(e,`razorwind.config.js`):F(w(e,`razorwind.config.mts`))?w(e,`razorwind.config.mts`):F(w(e,`razorwind.config.mjs`))?w(e,`razorwind.config.mjs`):F(w(e,`razorwind.config.cjs`))?w(e,`razorwind.config.cjs`):F(w(e,`razorwind.config.cts`))?w(e,`razorwind.config.cts`):F(w(e,`razorwind.config.json`))?w(e,`razorwind.config.json`):F(w(e,`razorwind.config.yaml`))?w(e,`razorwind.config.yaml`):F(w(e,`razorwind.config.yml`))?w(e,`razorwind.config.yml`):void 0,r=ye({orgId:`storm-software`,appId:`razorwind`,workspaceRoot:e}),i={fsCache:r.cache},a=xe(e,i),o={};if(n){let r=await a.import(a.esmResolve(n));if(r?.default){let i={};be(r.default)?i=await Promise.resolve(r.default({cwd:e,mode:t.mode??`development`})):(E(r.default)||Array.isArray(r.default))&&(i=r.default),(E(i)||Array.isArray(i))&&(o={...i,configFile:n})}}let[s,c,l]=await Promise.all([P({cwd:e,name:`razorwind`,envName:t.mode,globalRc:!0,packageJson:`razorwind`,dotenv:!0,jitiOptions:i}),P({cwd:r.config,name:`razorwind`,envName:t.mode,dotenv:!0,jitiOptions:i}),P({cwd:Ke,name:`razorwind`,envName:t.mode,dotenv:!0,jitiOptions:i})]),u=g({cwd:e,envPaths:{...r,home:Ke}},t,o,E(s?.config)?{...s.config}:{},E(c?.config)?{...c.config}:{},E(l?.config)?{...l.config}:{},{componentsPath:e,iconsPath:w(e,`assets/icons`),plugins:[]});if(Array.isArray(u.componentsPath)){let t=u.componentsPath.filter(D).map(e=>M(e));u.componentsPath=t.length>0?t:e}else u.componentsPath=D(u.componentsPath)?M(u.componentsPath):e;if(Array.isArray(u.iconsPath)){let t=u.iconsPath.filter(D).map(e=>M(e));u.iconsPath=t.length>0?t:w(e,`assets/icons`)}else u.iconsPath=D(u.iconsPath)?M(u.iconsPath):w(e,`assets/icons`);return Array.isArray(u.plugins)||(u.plugins=[]),u}function Je(e){return e}const Ye=he({meta:{name:`razorwind`,title:`Razorwind`,description:`A generator that uses Razorwind to generate design system code from design tokens, components, and icons.`,version:Ce,tags:[`razorwind`,`dtcg`]},schema:ge({schema:i}),input:async e=>{let t=p();if(t.options=await qe(t.cwd,e),t.options.plugins.length===0)throw Error(`Razorwind will not generate any code - no plugins configured. Please add at least one plugin to the configuration.`);d(t.options.plugins,_e);let n=t.options.tokens;(!n||m(n))&&(n=await f(t));let r={tokens:n??{},components:g(t.options.components??{},await U(t)??{}),icons:g(t.options.icons??{},await Ge(t)??{})};for(let e of t.options.plugins.filter(e=>e.extract))r=await e.extract(r,t.options);if(!r.tokens||m(r.tokens))throw Error(`Unable to load design tokens for the current workspace. Please ensure that Razorwind is configured correctly and that the tokens are available.`);for(let e of t.options.plugins.filter(e=>e.validate))await e.validate(r,t.options);return r},generator:async e=>{let t=p(),n={};for(let r of t.options.plugins.filter(e=>e.generate)){let i=await r.generate(e,t.options);n=g(i,n)}return n}});export{te as DEFAULT_TOKEN_PATH_CANDIDATES,s as RAZORWIND_INFER_PREPROCESSOR,o as THEME_BASENAME_PATTERN,de as TOKEN_DIRECTORY_GLOB,pe as TOKEN_FILE_EXTENSIONS,fe as TYPE_PATH_HINTS,c as WINDIE_PARSERS,c as razorwindParsers,Je as defineConfig,me as definePlugin,Ye as generator,oe as getRazorwindParserHooks,le as getRazorwindPreprocessorHooks,ee as inferTypeFromPath,se as inferValue,U as loadComponents,Ge as loadIcons,f as loadTokens,ae as loadTokensOrThrow,ie as nestFlatTokens,ne as normalizeTokenTree,u as parseCssCustomProperties,l as razorwindInferPreprocessor,d as registerRazorwindHooks,ue as registerRazorwindParsers,qe as resolveConfig,ce as resolveTokensSource,re as themeKeyFromPath};
|
|
1
|
+
import{a as e,c as t,i as n,l as r,r as i,s as a}from"./schema-buR6a6IP.mjs";import{_ as o,a as s,b as c,c as l,d as u,f as ee,g as te,h as ne,i as re,l as d,m as ie,n as ae,o as oe,p as se,r as ce,s as le,t as f,u as ue,v as de,x as fe,y as pe}from"./tokens-DidKwlVV.mjs";import{definePlugin as me}from"./plugin.mjs";import{defineGenerator as he,defineSchema as ge,useExecution as p}from"@power-plant/core";import{isEmptyObject as m}from"@stryke/type-checks/is-empty-object";import{createDefu as _e,defu as h}from"defu";import ve from"style-dictionary";import{existsSync as g}from"@stryke/fs/exists";import{isDirectory as _}from"@stryke/fs/is-file";import{readJsonFile as v}from"@stryke/fs/json";import{listFiles as ye}from"@stryke/fs/list-files";import{appendPath as y}from"@stryke/path/append";import{findFileExtensionSafe as b,findFileName as x,findFolderName as S}from"@stryke/path/file-path-fns";import{joinPaths as C}from"@stryke/path/join";import{titleCase as w}from"@stryke/string-format/title-case";import{isSetObject as T}from"@stryke/type-checks/is-set-object";import{isSetString as E}from"@stryke/type-checks/is-set-string";import{readFile as D,readdir as O}from"node:fs/promises";import{isAbsolute as k,resolve as A}from"node:path";import{getEnvPaths as be}from"@stryke/env/get-env-paths";import{findFilePath as j}from"@stryke/path/find";import{replacePath as M}from"@stryke/path/replace";import{isFunction as xe}from"@stryke/type-checks/is-function";import{loadConfig as N}from"c12";import{createJiti as Se}from"jiti";import{existsSync as P}from"node:fs";import Ce from"node:os";var we=`0.0.34`;function F(e){if(E(e))return e;if(T(e)&&`url`in e&&E(e.url))return e.url}const Te=t.partial(),I=new Set([`tsx`,`jsx`,`ts`,`js`,`mdx`,`md`,`css`,`html`,`txt`]),L=_e((e,t,n)=>Array.isArray(n)?(e[t]=n,!0):!1);function Ee(e,t){return k(t)?t:A(e,t)}function De(e){return Array.isArray(e)?e.filter(E):E(e)?[e]:[]}function R(e){let t=e.toLowerCase();if(I.has(t))return t}function Oe(e){let t=b(e)?.toLowerCase();return!!(t&&I.has(t))}function z(e){if(!e)return;let t=a.safeParse(e);if(t.success)return[t.data];if(!Array.isArray(e))return;let n=[];for(let t of e){let e=a.safeParse(t);e.success&&n.push(e.data)}return n.length>0?n:void 0}function B(e){if(!e)return;let t=r.safeParse(e);if(t.success)return[t.data];if(!Array.isArray(e))return;let n=[];for(let t of e){if(E(t)){let e=x(t,{withExtension:!1})||t,i=r.safeParse({name:e,path:t});i.success&&n.push(i.data);continue}let e=r.safeParse(t);e.success&&n.push(e.data)}return n.length>0?n:void 0}function V(e){if(!T(e))return;let{files:t,usage:n,...r}=e,i=Te.safeParse(r);if(i.success)return Object.keys(i.data).length>0?i.data:void 0}function ke(e){return T(e)&&`path`in e}async function Ae(e){let t=C(e,`package.json`);if(!g(t))return;let n;try{n=await v(t)}catch{return}let r={};E(n.name)&&(r.name=n.name,r.title=n.name),E(n.description)&&(r.description=n.description),E(n.version)&&(r.version=n.version),E(n.homepage)&&(r.homepage=n.homepage);let i=F(n.repository);if(i&&(r.repository=i),T(n.dependencies)&&(r.dependencies=n.dependencies),T(n.devDependencies)&&(r.devDependencies=n.devDependencies),Array.isArray(n.keywords)){let e=n.keywords.filter(E);e.length>0&&(r.tags=e)}let a=n.razorwind,o,s,c;ke(a)?s=z(a):T(a)&&(o=V(a),`files`in a&&(s=z(a.files)),`usage`in a&&(c=B(a.usage)));let l=L(o??{},r);return s?.length&&(l.files=s),c?.length&&(l.usage=c),Object.keys(l).length>0?l:void 0}async function je(e){let t=C(e,`component.json`);if(!g(t))return;let n;try{n=await v(t)}catch{return}if(ke(n)||Array.isArray(n)){let e=z(n);if(e)return{files:e}}if(!T(n))return;let r=V(n)??{},i=`files`in n?z(n.files):void 0,a=`usage`in n?B(n.usage):void 0;return i?.length&&(r.files=i),a?.length&&(r.usage=a),Object.keys(r).length>0?r:void 0}async function Me(e){try{return(await O(e,{withFileTypes:!0})).filter(e=>e.isFile()&&!e.name.startsWith(`.`)&&Oe(e.name)).map(e=>e.name).toSorted((e,t)=>e.localeCompare(t))}catch{return[]}}async function Ne(e,t){if(t?.length)return Promise.all(t.map(async t=>{let n=y(t.path,e),r=b(t.path)??``,i=t.language??R(r),a=t.name||x(t.path,{withExtension:!1})||t.path,o=t.content===void 0?g(n)?await D(n,`utf8`):void 0:t.content;return{...t,name:a,path:n,...i?{language:i}:{},...o===void 0?{}:{content:o}}}));let n=C(e,`usage`);if(!g(n)||!_(n))return;let r=await Me(n);if(r.length!==0)return Promise.all(r.map(async e=>{let t=C(n,e),r=R(b(e)??``),i=x(e,{withExtension:!1})||e;return{name:i,title:w(i),path:t,content:await D(t,`utf8`),...r?{language:r}:{}}}))}async function Pe(e,t){let n=t??(await ye(e)).filter(e=>x(e,{withExtension:!1})===`index`);return Promise.all(n.filter(Boolean).map(async t=>typeof t==`string`?{type:/[tj]sx$/.test(b(t))?`component`:`file`,path:t,content:await D(y(t,e),`utf8`)}:{type:/[tj]sx$/.test(b(t.path))?`component`:`file`,...t,content:t.content?t.content:t.path?await D(y(t.path,e),`utf8`):void 0,path:y(t.path,e)}))}async function Fe(e){let n=await Ae(e),r=await je(e);if(!n&&!r)return;let i=L(r??{},n??{}),a=E(i.name)?i.name:S(e),o=E(i.title)?i.title:w(a),s=t.safeParse({...i,name:a,title:o});if(!s.success)return;let c=await Ne(e,s.data.usage);return{...s.data,files:await Pe(e,s.data.files),...c?.length?{usage:c}:{}}}async function H(e){let t={},n=De(e.options.componentsPath);for(let r of n){let n=Ee(e.cwd,r);if(!(!g(n)||!_(n)))try{let e=await O(n,{withFileTypes:!0});for(let r of e){if(!r.isDirectory()||r.name.startsWith(`.`))continue;let e=await Fe(C(n,r.name));e&&(t[e.name]=e)}}catch{continue}}return t}const Ie=e.partial(),U=new Set([`svg`,`png`,`webp`,`jpg`,`jpeg`,`gif`,`ico`]),W=_e((e,t,n)=>Array.isArray(n)?(e[t]=n,!0):!1);function Le(e,t){return k(t)?t:A(e,t)}function Re(e){return Array.isArray(e)?e.filter(E):E(e)?[e]:[]}function G(e){let t=e.toLowerCase();if(U.has(t))return t}function K(e){let t=b(e)?.toLowerCase();return!!(t&&U.has(t))}function ze(e){return o.test(e)}async function q(e){try{return(await O(e,{withFileTypes:!0})).filter(e=>e.isFile()&&K(e.name)).map(e=>e.name)}catch{return[]}}function J(e){if(!e)return;let t=n.safeParse(e);if(t.success)return[t.data];if(!Array.isArray(e))return;let r=[];for(let t of e){let e=n.safeParse(t);e.success&&r.push(e.data)}return r.length>0?r:void 0}function Y(e){if(!T(e))return;let t=Ie.safeParse(e);if(t.success)return Object.keys(t.data).length>0?t.data:void 0}function Be(e){return T(e)&&`path`in e}async function X(e,t,n){let r=y(e,t),i=G(b(e)??``)??`file`,a=i===`svg`?await D(r,`utf8`):void 0;return{path:r,type:i,...n?{theme:n}:{},...a===void 0?{}:{content:a}}}async function Ve(e){let t=C(e,`package.json`);if(!g(t))return;let n;try{n=await v(t)}catch{return}let r={};E(n.name)&&(r.name=n.name,r.title=n.name),E(n.description)&&(r.description=n.description),E(n.version)&&(r.version=n.version),E(n.homepage)&&(r.homepage=n.homepage);let i=F(n.repository);if(i&&(r.repository=i),Array.isArray(n.keywords)){let e=n.keywords.filter(E);e.length>0&&(r.tags=e)}let a=n.razorwind,o,s;Be(a)?s=J(a):T(a)&&(o=Y(a),`files`in a&&(s=J(a.files)));let c=W(o??{},r);return s?.length&&(c.files=s),Object.keys(c).length>0?c:void 0}async function He(e){let t=C(e,`icon.json`);if(!g(t))return;let n;try{n=await v(t)}catch{return}if(Be(n)||Array.isArray(n)){let e=J(n);if(e)return{files:e}}return Y(n)}async function Ue(e,t){if(t?.length)return Promise.all(t.map(async t=>{let n=y(t.path,e),r=b(t.path)??``,i=t.type??G(r)??`file`,a=t.content===void 0?i===`svg`?await D(n,`utf8`):void 0:t.content;return{...t,type:i,path:n,...a===void 0?{}:{content:a}}}));let n=await q(e);return Promise.all(n.map(t=>X(t,e)))}async function We(t){let n=await Ve(t),r=await He(t),i=await q(t);if(!n&&!r&&i.length===0)return;let a=W(r??{},n??{}),o=E(a.name)?a.name:S(t),s=E(a.title)?a.title:w(o),c=e.safeParse({...a,name:o,title:s});if(c.success)return{...c.data,files:await Ue(t,c.data.files)}}function Ge(e,t,n){let r=e[t];if(!r){e[t]={name:t,title:w(t),files:[n]};return}let i=[...r.files??[]],a=i.findIndex(e=>e.path===n.path&&e.theme===n.theme);a>=0?i[a]=n:i.push(n),e[t]={...r,files:i}}async function Ke(e,t,n){let r=await q(e);for(let i of r){let r=x(i,{withExtension:!1});r&&Ge(n,r,await X(i,e,t))}}async function Z(e){let t={},n=Re(e.options.iconsPath);for(let r of n){let n=Le(e.cwd,r);if(!(!g(n)||!_(n)))try{let e=await O(n,{withFileTypes:!0});for(let r of e){if(r.name.startsWith(`.`))continue;let e=C(n,r.name);if(r.isDirectory()){if(ze(r.name)){await Ke(e,r.name,t);continue}let n=await We(e);if(n){let e=t[n.name];t[n.name]=e?W(n,e):n}continue}if(r.isFile()&&K(r.name)){let e=x(r.name,{withExtension:!1});if(!e)continue;Ge(t,e,await X(r.name,n))}}}catch{continue}}return t}function Q(e,t){let n=e[t];return E(n)?n:void 0}function qe(e){let t={};E(e.name)&&(t.name=e.name),E(e.description)&&(t.description=e.description),E(e.homepage)&&(t.homepage=e.homepage);let n=F(e.repository);n&&(t.repository=n),E(e.logo)&&(t.logo=e.logo);let r=e.razorwind,i={};if(T(r)){let e=r,t=Q(e,`title`),n=Q(e,`name`),a=Q(e,`description`),o=Q(e,`homepage`),s=Q(e,`logo`),c=F(e.repository);n&&(i.name=n),t&&(i.title=t),a&&(i.description=a),o&&(i.homepage=o),s&&(i.logo=s),c&&(i.repository=c)}return h(i,t)}function Je(e){let t={};return E(e.name)&&(t.name=e.name),E(e.title)&&(t.title=e.title),E(e.description)&&(t.description=e.description),E(e.repository)&&(t.repository=e.repository),E(e.homepage)&&(t.homepage=e.homepage),E(e.logo)&&(t.logo=e.logo),t}async function Ye(e){let t=C(e,`package.json`);if(!g(t))return{};let n;try{n=await v(t)}catch{return{}}return qe(n)}async function Xe(e,t){let n=await Ye(e),r=Je(t);return h(r,n)}const Ze=Ce.homedir();async function $(e,t){let n=t.configFile&&P(M(t.configFile,e))?M(t.configFile,e):t.configFile&&P(t.configFile)?t.configFile:P(C(e,`razorwind.${t.mode}.ts`))?C(e,`razorwind.${t.mode}.ts`):P(C(e,`razorwind.${t.mode}.js`))?C(e,`razorwind.${t.mode}.js`):P(C(e,`razorwind.${t.mode}.mts`))?C(e,`razorwind.${t.mode}.mts`):P(C(e,`razorwind.${t.mode}.mjs`))?C(e,`razorwind.${t.mode}.mjs`):P(C(e,`razorwind.${t.mode}.cjs`))?C(e,`razorwind.${t.mode}.cjs`):P(C(e,`razorwind.${t.mode}.cts`))?C(e,`razorwind.${t.mode}.cts`):P(C(e,`razorwind.${t.mode}.json`))?C(e,`razorwind.${t.mode}.json`):P(C(e,`razorwind.${t.mode}.yaml`))?C(e,`razorwind.${t.mode}.yaml`):P(C(e,`razorwind.${t.mode}.yml`))?C(e,`razorwind.${t.mode}.yml`):P(C(e,`razorwind.config.ts`))?C(e,`razorwind.config.ts`):P(C(e,`razorwind.config.js`))?C(e,`razorwind.config.js`):P(C(e,`razorwind.config.mts`))?C(e,`razorwind.config.mts`):P(C(e,`razorwind.config.mjs`))?C(e,`razorwind.config.mjs`):P(C(e,`razorwind.config.cjs`))?C(e,`razorwind.config.cjs`):P(C(e,`razorwind.config.cts`))?C(e,`razorwind.config.cts`):P(C(e,`razorwind.config.json`))?C(e,`razorwind.config.json`):P(C(e,`razorwind.config.yaml`))?C(e,`razorwind.config.yaml`):P(C(e,`razorwind.config.yml`))?C(e,`razorwind.config.yml`):void 0,r=be({orgId:`storm-software`,appId:`razorwind`,workspaceRoot:e}),i={fsCache:r.cache},a=Se(e,i),o={};if(n){let r=await a.import(a.esmResolve(n));if(r?.default){let i={};xe(r.default)?i=await Promise.resolve(r.default({cwd:e,mode:t.mode??`development`})):(T(r.default)||Array.isArray(r.default))&&(i=r.default),(T(i)||Array.isArray(i))&&(o={...i,configFile:n})}}let[s,c,l]=await Promise.all([N({cwd:e,name:`razorwind`,envName:t.mode,globalRc:!0,packageJson:`razorwind`,dotenv:!0,jitiOptions:i}),N({cwd:r.config,name:`razorwind`,envName:t.mode,dotenv:!0,jitiOptions:i}),N({cwd:Ze,name:`razorwind`,envName:t.mode,dotenv:!0,jitiOptions:i})]),u=h({cwd:e,envPaths:{...r,home:Ze}},t,o,T(s?.config)?{...s.config}:{},T(c?.config)?{...c.config}:{},T(l?.config)?{...l.config}:{},{componentsPath:e,iconsPath:C(e,`assets/icons`),plugins:[]});if(Array.isArray(u.componentsPath)){let t=u.componentsPath.filter(E).map(e=>j(e));u.componentsPath=t.length>0?t:e}else u.componentsPath=E(u.componentsPath)?j(u.componentsPath):e;if(Array.isArray(u.iconsPath)){let t=u.iconsPath.filter(E).map(e=>j(e));u.iconsPath=t.length>0?t:C(e,`assets/icons`)}else u.iconsPath=E(u.iconsPath)?j(u.iconsPath):C(e,`assets/icons`);return Array.isArray(u.plugins)||(u.plugins=[]),u}function Qe(e){return e}const $e=he({meta:{name:`razorwind`,title:`Razorwind`,description:`A generator that uses Razorwind to generate design system code from design tokens, components, and icons.`,version:we,tags:[`razorwind`,`dtcg`]},schema:ge({schema:i}),input:async e=>{let t=p();if(t.options=await $(t.cwd,e),t.options.plugins.length===0)throw Error(`Razorwind will not generate any code - no plugins configured. Please add at least one plugin to the configuration.`);d(t.options.plugins,ve);let n=t.options.tokens;(!n||m(n))&&(n=await f(t));let r={...await Xe(t.cwd,t.options),tokens:n??{},components:h(t.options.components??{},await H(t)??{}),icons:h(t.options.icons??{},await Z(t)??{})};for(let e of t.options.plugins.filter(e=>e.extract))r=await e.extract(r,t.options);if(!r.tokens||m(r.tokens))throw Error(`Unable to load design tokens for the current workspace. Please ensure that Razorwind is configured correctly and that the tokens are available.`);for(let e of t.options.plugins.filter(e=>e.validate))await e.validate(r,t.options);return r},generator:async e=>{let t=p(),n={};for(let r of t.options.plugins.filter(e=>e.generate)){let i=await r.generate(e,t.options);n=h(i,n)}return n}});export{te as DEFAULT_TOKEN_PATH_CANDIDATES,s as RAZORWIND_INFER_PREPROCESSOR,o as THEME_BASENAME_PATTERN,de as TOKEN_DIRECTORY_GLOB,pe as TOKEN_FILE_EXTENSIONS,fe as TYPE_PATH_HINTS,c as WINDIE_PARSERS,c as razorwindParsers,Qe as defineConfig,me as definePlugin,$e as generator,oe as getRazorwindParserHooks,le as getRazorwindPreprocessorHooks,ee as inferTypeFromPath,se as inferValue,H as loadComponents,Z as loadIcons,Ye as loadSchemaMetaFromPackageJson,f as loadTokens,ae as loadTokensOrThrow,ie as nestFlatTokens,F as normalizeRepository,ne as normalizeTokenTree,u as parseCssCustomProperties,l as razorwindInferPreprocessor,d as registerRazorwindHooks,ue as registerRazorwindParsers,$ as resolveConfig,Xe as resolveSchemaMeta,ce as resolveTokensSource,Je as schemaMetaFromConfig,qe as schemaMetaFromPackageJson,re as themeKeyFromPath};
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../tokens-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../tokens-b0f4LbvP.cjs");exports.DEFAULT_TOKEN_PATH_CANDIDATES=e.g,exports.RAZORWIND_INFER_PREPROCESSOR=e.a,exports.THEME_BASENAME_PATTERN=e._,exports.TOKEN_DIRECTORY_GLOB=e.v,exports.TOKEN_FILE_EXTENSIONS=e.y,exports.TYPE_PATH_HINTS=e.x,exports.WINDIE_PARSERS=e.b,exports.razorwindParsers=e.b,exports.getRazorwindParserHooks=e.o,exports.getRazorwindPreprocessorHooks=e.s,exports.inferTypeFromPath=e.f,exports.inferValue=e.p,exports.loadTokens=e.t,exports.loadTokensOrThrow=e.n,exports.nestFlatTokens=e.m,exports.normalizeTokenTree=e.h,exports.parseCssCustomProperties=e.d,exports.razorwindInferPreprocessor=e.c,exports.registerRazorwindHooks=e.l,exports.registerRazorwindParsers=e.u,exports.resolveTokensSource=e.r,exports.themeKeyFromPath=e.i;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { C as RazorwindParserName, D as TOKEN_PARSER_NAMES, E as TOKEN_FILE_EXTENSIONS, O as TYPE_PATH_HINTS, S as DEFAULT_TOKEN_PATH_CANDIDATES, T as TOKEN_DIRECTORY_GLOB, _ as inferTypeFromPath, a as razorwindInferPreprocessor, b as normalizeTokenTree, c as LoadTokensOptions, d as loadTokensOrThrow, f as ResolveTokensPathOptions, g as InferredTokenType, h as themeKeyFromPath, i as getRazorwindPreprocessorHooks, l as LoadedTokens, m as resolveTokensSource, n as StyleDictionaryRegisterTarget, o as registerRazorwindHooks, p as ResolvedTokensSource, r as getRazorwindParserHooks, s as registerRazorwindParsers, t as RAZORWIND_INFER_PREPROCESSOR, u as loadTokens, v as inferValue, w as THEME_BASENAME_PATTERN, x as parseCssCustomProperties, y as nestFlatTokens } from "../../index-
|
|
1
|
+
import { C as RazorwindParserName, D as TOKEN_PARSER_NAMES, E as TOKEN_FILE_EXTENSIONS, O as TYPE_PATH_HINTS, S as DEFAULT_TOKEN_PATH_CANDIDATES, T as TOKEN_DIRECTORY_GLOB, _ as inferTypeFromPath, a as razorwindInferPreprocessor, b as normalizeTokenTree, c as LoadTokensOptions, d as loadTokensOrThrow, f as ResolveTokensPathOptions, g as InferredTokenType, h as themeKeyFromPath, i as getRazorwindPreprocessorHooks, l as LoadedTokens, m as resolveTokensSource, n as StyleDictionaryRegisterTarget, o as registerRazorwindHooks, p as ResolvedTokensSource, r as getRazorwindParserHooks, s as registerRazorwindParsers, t as RAZORWIND_INFER_PREPROCESSOR, u as loadTokens, v as inferValue, w as THEME_BASENAME_PATTERN, x as parseCssCustomProperties, y as nestFlatTokens } from "../../index-BRN9L8Lx.cjs";
|
|
2
2
|
export { DEFAULT_TOKEN_PATH_CANDIDATES, type InferredTokenType, type LoadTokensOptions, type LoadedTokens, RAZORWIND_INFER_PREPROCESSOR, type RazorwindParserName, type ResolveTokensPathOptions, type ResolvedTokensSource, type StyleDictionaryRegisterTarget, THEME_BASENAME_PATTERN, TOKEN_DIRECTORY_GLOB, TOKEN_FILE_EXTENSIONS, TYPE_PATH_HINTS, TOKEN_PARSER_NAMES as WINDIE_PARSERS, TOKEN_PARSER_NAMES as razorwindParsers, getRazorwindParserHooks, getRazorwindPreprocessorHooks, inferTypeFromPath, inferValue, loadTokens, loadTokensOrThrow, nestFlatTokens, normalizeTokenTree, parseCssCustomProperties, razorwindInferPreprocessor, registerRazorwindHooks, registerRazorwindParsers, resolveTokensSource, themeKeyFromPath };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { C as RazorwindParserName, D as TOKEN_PARSER_NAMES, E as TOKEN_FILE_EXTENSIONS, O as TYPE_PATH_HINTS, S as DEFAULT_TOKEN_PATH_CANDIDATES, T as TOKEN_DIRECTORY_GLOB, _ as inferTypeFromPath, a as razorwindInferPreprocessor, b as normalizeTokenTree, c as LoadTokensOptions, d as loadTokensOrThrow, f as ResolveTokensPathOptions, g as InferredTokenType, h as themeKeyFromPath, i as getRazorwindPreprocessorHooks, l as LoadedTokens, m as resolveTokensSource, n as StyleDictionaryRegisterTarget, o as registerRazorwindHooks, p as ResolvedTokensSource, r as getRazorwindParserHooks, s as registerRazorwindParsers, t as RAZORWIND_INFER_PREPROCESSOR, u as loadTokens, v as inferValue, w as THEME_BASENAME_PATTERN, x as parseCssCustomProperties, y as nestFlatTokens } from "../../index-
|
|
1
|
+
import { C as RazorwindParserName, D as TOKEN_PARSER_NAMES, E as TOKEN_FILE_EXTENSIONS, O as TYPE_PATH_HINTS, S as DEFAULT_TOKEN_PATH_CANDIDATES, T as TOKEN_DIRECTORY_GLOB, _ as inferTypeFromPath, a as razorwindInferPreprocessor, b as normalizeTokenTree, c as LoadTokensOptions, d as loadTokensOrThrow, f as ResolveTokensPathOptions, g as InferredTokenType, h as themeKeyFromPath, i as getRazorwindPreprocessorHooks, l as LoadedTokens, m as resolveTokensSource, n as StyleDictionaryRegisterTarget, o as registerRazorwindHooks, p as ResolvedTokensSource, r as getRazorwindParserHooks, s as registerRazorwindParsers, t as RAZORWIND_INFER_PREPROCESSOR, u as loadTokens, v as inferValue, w as THEME_BASENAME_PATTERN, x as parseCssCustomProperties, y as nestFlatTokens } from "../../index-C0PpOx6h.mjs";
|
|
2
2
|
export { DEFAULT_TOKEN_PATH_CANDIDATES, type InferredTokenType, type LoadTokensOptions, type LoadedTokens, RAZORWIND_INFER_PREPROCESSOR, type RazorwindParserName, type ResolveTokensPathOptions, type ResolvedTokensSource, type StyleDictionaryRegisterTarget, THEME_BASENAME_PATTERN, TOKEN_DIRECTORY_GLOB, TOKEN_FILE_EXTENSIONS, TYPE_PATH_HINTS, TOKEN_PARSER_NAMES as WINDIE_PARSERS, TOKEN_PARSER_NAMES as razorwindParsers, getRazorwindParserHooks, getRazorwindPreprocessorHooks, inferTypeFromPath, inferValue, loadTokens, loadTokensOrThrow, nestFlatTokens, normalizeTokenTree, parseCssCustomProperties, razorwindInferPreprocessor, registerRazorwindHooks, registerRazorwindParsers, resolveTokensSource, themeKeyFromPath };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as e,a as t,b as n,c as r,d as i,f as a,g as o,h as s,i as c,l,m as u,n as d,o as f,p,r as m,s as h,t as g,u as _,v,x as y,y as b}from"../../tokens-
|
|
1
|
+
import{_ as e,a as t,b as n,c as r,d as i,f as a,g as o,h as s,i as c,l,m as u,n as d,o as f,p,r as m,s as h,t as g,u as _,v,x as y,y as b}from"../../tokens-DidKwlVV.mjs";export{o as DEFAULT_TOKEN_PATH_CANDIDATES,t as RAZORWIND_INFER_PREPROCESSOR,e as THEME_BASENAME_PATTERN,v as TOKEN_DIRECTORY_GLOB,b as TOKEN_FILE_EXTENSIONS,y as TYPE_PATH_HINTS,n as WINDIE_PARSERS,n as razorwindParsers,f as getRazorwindParserHooks,h as getRazorwindPreprocessorHooks,a as inferTypeFromPath,p as inferValue,g as loadTokens,d as loadTokensOrThrow,u as nestFlatTokens,s as normalizeTokenTree,i as parseCssCustomProperties,r as razorwindInferPreprocessor,l as registerRazorwindHooks,_ as registerRazorwindParsers,m as resolveTokensSource,c as themeKeyFromPath};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { l as Plugin } from "./config-
|
|
1
|
+
import { l as Plugin } from "./config-76inX2KE.cjs";
|
|
2
2
|
//#region src/plugin.d.ts
|
|
3
3
|
/**
|
|
4
4
|
* Type helper for Razorwind plugins (`parsers` / `preprocessors` + `extract` / `validate` / `generate`).
|
|
@@ -46,4 +46,4 @@ declare function definePlugin<TOptions>(factory: (options: TOptions) => Plugin,
|
|
|
46
46
|
declare function definePlugin(plugin: Plugin, overrides?: Partial<Plugin>): Plugin;
|
|
47
47
|
//#endregion
|
|
48
48
|
export { definePlugin as t };
|
|
49
|
-
//# sourceMappingURL=plugin-
|
|
49
|
+
//# sourceMappingURL=plugin-CEq_6bcb.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-
|
|
1
|
+
{"version":3,"file":"plugin-CEq_6bcb.d.cts","names":[],"sources":["../src/plugin.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAiEgB,aAAa,UAC3B,UAAU,SAAS,aAAa,QAChC,YAAY,QAAQ,WAClB,UAAU,aAAa;iBACX,aACd,QAAQ,QACR,YAAY,QAAQ,UACnB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { l as Plugin } from "./config-
|
|
1
|
+
import { l as Plugin } from "./config-CWYJH70g.mjs";
|
|
2
2
|
//#region src/plugin.d.ts
|
|
3
3
|
/**
|
|
4
4
|
* Type helper for Razorwind plugins (`parsers` / `preprocessors` + `extract` / `validate` / `generate`).
|
|
@@ -46,4 +46,4 @@ declare function definePlugin<TOptions>(factory: (options: TOptions) => Plugin,
|
|
|
46
46
|
declare function definePlugin(plugin: Plugin, overrides?: Partial<Plugin>): Plugin;
|
|
47
47
|
//#endregion
|
|
48
48
|
export { definePlugin as t };
|
|
49
|
-
//# sourceMappingURL=plugin-
|
|
49
|
+
//# sourceMappingURL=plugin-w3-Ub3fa.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-w3-Ub3fa.d.mts","names":[],"sources":["../src/plugin.ts"],"mappings":""}
|
package/dist/plugin.d.cts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { d as TokensPreprocessor, l as Plugin, u as TokensParser } from "./config-
|
|
2
|
-
import { t as definePlugin } from "./plugin-
|
|
1
|
+
import { d as TokensPreprocessor, l as Plugin, u as TokensParser } from "./config-76inX2KE.cjs";
|
|
2
|
+
import { t as definePlugin } from "./plugin-CEq_6bcb.cjs";
|
|
3
3
|
export { type Plugin, type TokensParser, type TokensPreprocessor, definePlugin };
|
package/dist/plugin.d.mts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { d as TokensPreprocessor, l as Plugin, u as TokensParser } from "./config-
|
|
2
|
-
import { t as definePlugin } from "./plugin-
|
|
1
|
+
import { d as TokensPreprocessor, l as Plugin, u as TokensParser } from "./config-CWYJH70g.mjs";
|
|
2
|
+
import { t as definePlugin } from "./plugin-w3-Ub3fa.mjs";
|
|
3
3
|
export { type Plugin, type TokensParser, type TokensPreprocessor, definePlugin };
|
package/dist/schema/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../schema-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../schema-93daQRSN.cjs");let t=require("@power-plant/dtcg-schema");exports.componentFileSchema=e.a,exports.componentSchema=e.o,exports.componentUsageSchema=e.s,exports.componentsSchema=e.c,exports.iconFileSchema=e.n,exports.iconSchema=e.r,exports.iconsSchema=e.i,exports.schema=e.t,Object.defineProperty(exports,"tokenSchema",{enumerable:!0,get:function(){return t.tokenSchema}}),Object.defineProperty(exports,"tokensSchema",{enumerable:!0,get:function(){return t.tokensSchema}});
|
package/dist/schema/index.d.cts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as Icons, c as iconsSchema, d as ComponentUsage, f as Components, g as componentsSchema, h as componentUsageSchema, i as IconFile, l as Component, m as componentSchema, n as schema, o as iconFileSchema, p as componentFileSchema, r as Icon, s as iconSchema, t as Schema, u as ComponentFile } from "../schema-
|
|
2
|
-
import { i as tokensSchema, n as Tokens, r as tokenSchema, t as Token } from "../index-
|
|
1
|
+
import { a as Icons, c as iconsSchema, d as ComponentUsage, f as Components, g as componentsSchema, h as componentUsageSchema, i as IconFile, l as Component, m as componentSchema, n as schema, o as iconFileSchema, p as componentFileSchema, r as Icon, s as iconSchema, t as Schema, u as ComponentFile } from "../schema-BihaPsfF.cjs";
|
|
2
|
+
import { i as tokensSchema, n as Tokens, r as tokenSchema, t as Token } from "../index-Bmg0_4Yr.cjs";
|
|
3
3
|
export { type Component, type ComponentFile, type ComponentUsage, type Components, type Icon, type IconFile, type Icons, type Schema, type Token, type Tokens, componentFileSchema, componentSchema, componentUsageSchema, componentsSchema, iconFileSchema, iconSchema, iconsSchema, schema, tokenSchema, tokensSchema };
|
package/dist/schema/index.d.mts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as Icons, c as iconsSchema, d as ComponentUsage, f as Components, g as componentsSchema, h as componentUsageSchema, i as IconFile, l as Component, m as componentSchema, n as schema, o as iconFileSchema, p as componentFileSchema, r as Icon, s as iconSchema, t as Schema, u as ComponentFile } from "../schema-
|
|
2
|
-
import { i as tokensSchema, n as Tokens, r as tokenSchema, t as Token } from "../index-
|
|
1
|
+
import { a as Icons, c as iconsSchema, d as ComponentUsage, f as Components, g as componentsSchema, h as componentUsageSchema, i as IconFile, l as Component, m as componentSchema, n as schema, o as iconFileSchema, p as componentFileSchema, r as Icon, s as iconSchema, t as Schema, u as ComponentFile } from "../schema-BihaPsfF.mjs";
|
|
2
|
+
import { i as tokensSchema, n as Tokens, r as tokenSchema, t as Token } from "../index-DB9GwBAG.mjs";
|
|
3
3
|
export { type Component, type ComponentFile, type ComponentUsage, type Components, type Icon, type IconFile, type Icons, type Schema, type Token, type Tokens, componentFileSchema, componentSchema, componentUsageSchema, componentsSchema, iconFileSchema, iconSchema, iconsSchema, schema, tokenSchema, tokensSchema };
|
package/dist/schema/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e,c as t,i as n,l as r,n as i,o as a,r as o,s,t as c,u as l}from"../schema-
|
|
1
|
+
import{a as e,c as t,i as n,l as r,n as i,o as a,r as o,s,t as c,u as l}from"../schema-buR6a6IP.mjs";export{s as componentFileSchema,t as componentSchema,r as componentUsageSchema,l as componentsSchema,n as iconFileSchema,e as iconSchema,a as iconsSchema,o as schema,c as tokenSchema,i as tokensSchema};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("./rolldown-runtime-BocRIvOZ.cjs");let t=require("zod");t=e.t(t,1);let n=require("@power-plant/dtcg-schema");const r=t.z.object({path:t.z.string(),type:t.z.enum([`lib`,`block`,`component`,`ui`,`hook`,`theme`,`page`,`file`,`style`,`base`,`font`,`item`]).optional(),content:t.z.string().optional(),target:t.z.string().optional().describe(`The target path of the file. This is the path to the file in the project. Supports registry target placeholders @components/, @ui/, @lib/, and @hooks/, which resolve to the corresponding aliases configured in components.json. These placeholders are independent of the project's import prefix.`)}),i=t.z.object({name:t.z.string().optional().describe(`Stable usage example id. Defaults to the source filename without extension.`),title:t.z.string().optional(),description:t.z.string().optional(),path:t.z.string(),content:t.z.string().optional(),language:t.z.enum([`tsx`,`jsx`,`ts`,`js`,`mdx`,`md`,`css`,`html`,`txt`]).optional().describe(`Source language for syntax highlighting. Inferred from the file extension when omitted.`)}),a=t.z.object({name:t.z.string(),title:t.z.string(),type:t.z.enum([`block`,`component`,`ui`,`page`]).default(`component`),category:t.z.string().optional(),description:t.z.string().optional(),tags:t.z.array(t.z.string()).optional(),related:t.z.array(t.z.string()).optional(),since:t.z.string().optional(),version:t.z.string().optional(),repository:t.z.string().optional(),homepage:t.z.string().optional(),dependencies:t.z.record(t.z.string(),t.z.string()).optional(),devDependencies:t.z.record(t.z.string(),t.z.string()).optional(),registryDependencies:t.z.record(t.z.string(),t.z.string()).optional(),files:t.z.array(r).optional(),usage:t.z.array(i).optional().describe("Example usage snippets for this component. Prefer a `usage/` directory of source files; entries may also be declared in metadata.")}),o=t.z.record(t.z.string(),a),s=t.z.object({path:t.z.string(),type:t.z.enum([`svg`,`png`,`webp`,`jpg`,`jpeg`,`gif`,`ico`,`file`]).optional(),content:t.z.string().optional(),theme:t.z.string().optional().describe(`Optional theme variant for this asset (for example light or dark).`),target:t.z.string().optional().describe(`The target path of the file in the project. Supports registry-style placeholders independent of the project's import prefix.`)}),c=t.z.object({name:t.z.string(),title:t.z.string(),category:t.z.string().optional(),description:t.z.string().optional(),tags:t.z.array(t.z.string()).optional(),aliases:t.z.array(t.z.string()).optional(),related:t.z.array(t.z.string()).optional(),since:t.z.string().optional(),version:t.z.string().optional(),repository:t.z.string().optional(),homepage:t.z.string().optional(),files:t.z.array(s).optional()}),l=t.z.record(t.z.string(),c),u=t.default.union([n.tokensSchema,t.default.record(t.default.string(),n.tokensSchema)]),d=t.default.object({tokens:u,components:o,icons:l});Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return d}});
|
|
1
|
+
const e=require("./rolldown-runtime-BocRIvOZ.cjs");let t=require("zod");t=e.t(t,1);let n=require("@power-plant/dtcg-schema");const r=t.z.object({path:t.z.string(),type:t.z.enum([`lib`,`block`,`component`,`ui`,`hook`,`theme`,`page`,`file`,`style`,`base`,`font`,`item`]).optional(),content:t.z.string().optional(),target:t.z.string().optional().describe(`The target path of the file. This is the path to the file in the project. Supports registry target placeholders @components/, @ui/, @lib/, and @hooks/, which resolve to the corresponding aliases configured in components.json. These placeholders are independent of the project's import prefix.`)}),i=t.z.object({name:t.z.string().optional().describe(`Stable usage example id. Defaults to the source filename without extension.`),title:t.z.string().optional(),description:t.z.string().optional(),path:t.z.string(),content:t.z.string().optional(),language:t.z.enum([`tsx`,`jsx`,`ts`,`js`,`mdx`,`md`,`css`,`html`,`txt`]).optional().describe(`Source language for syntax highlighting. Inferred from the file extension when omitted.`)}),a=t.z.object({name:t.z.string(),title:t.z.string(),type:t.z.enum([`block`,`component`,`ui`,`page`]).default(`component`),category:t.z.string().optional(),description:t.z.string().optional(),tags:t.z.array(t.z.string()).optional(),related:t.z.array(t.z.string()).optional(),since:t.z.string().optional(),version:t.z.string().optional(),repository:t.z.string().optional(),homepage:t.z.string().optional(),dependencies:t.z.record(t.z.string(),t.z.string()).optional(),devDependencies:t.z.record(t.z.string(),t.z.string()).optional(),registryDependencies:t.z.record(t.z.string(),t.z.string()).optional(),files:t.z.array(r).optional(),usage:t.z.array(i).optional().describe("Example usage snippets for this component. Prefer a `usage/` directory of source files; entries may also be declared in metadata.")}),o=t.z.record(t.z.string(),a),s=t.z.object({path:t.z.string(),type:t.z.enum([`svg`,`png`,`webp`,`jpg`,`jpeg`,`gif`,`ico`,`file`]).optional(),content:t.z.string().optional(),theme:t.z.string().optional().describe(`Optional theme variant for this asset (for example light or dark).`),target:t.z.string().optional().describe(`The target path of the file in the project. Supports registry-style placeholders independent of the project's import prefix.`)}),c=t.z.object({name:t.z.string(),title:t.z.string(),category:t.z.string().optional(),description:t.z.string().optional(),tags:t.z.array(t.z.string()).optional(),aliases:t.z.array(t.z.string()).optional(),related:t.z.array(t.z.string()).optional(),since:t.z.string().optional(),version:t.z.string().optional(),repository:t.z.string().optional(),homepage:t.z.string().optional(),files:t.z.array(s).optional()}),l=t.z.record(t.z.string(),c),u=t.default.union([n.tokensSchema,t.default.record(t.default.string(),n.tokensSchema)]),d=t.default.object({name:t.default.string().optional(),title:t.default.string().optional(),repository:t.default.string().optional(),homepage:t.default.string().optional(),description:t.default.string().optional(),logo:t.default.string().optional(),tokens:u,components:o,icons:l});Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return d}});
|
|
@@ -247,6 +247,12 @@ type Icons = z$1.infer<typeof iconsSchema>;
|
|
|
247
247
|
//#endregion
|
|
248
248
|
//#region src/schema/schema.d.ts
|
|
249
249
|
interface Schema {
|
|
250
|
+
name?: string;
|
|
251
|
+
title?: string;
|
|
252
|
+
repository?: string;
|
|
253
|
+
homepage?: string;
|
|
254
|
+
description?: string;
|
|
255
|
+
logo?: string;
|
|
250
256
|
components: Components;
|
|
251
257
|
icons: Icons;
|
|
252
258
|
tokens: Tokens | Record<string, Tokens>;
|
|
@@ -254,4 +260,4 @@ interface Schema {
|
|
|
254
260
|
declare const schema: z.ZodType<Schema>;
|
|
255
261
|
//#endregion
|
|
256
262
|
export { Icons as a, iconsSchema as c, ComponentUsage as d, Components as f, componentsSchema as g, componentUsageSchema as h, IconFile as i, Component as l, componentSchema as m, schema as n, iconFileSchema as o, componentFileSchema as p, Icon as r, iconSchema as s, Schema as t, ComponentFile as u };
|
|
257
|
-
//# sourceMappingURL=schema-
|
|
263
|
+
//# sourceMappingURL=schema-BihaPsfF.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-
|
|
1
|
+
{"version":3,"file":"schema-BihaPsfF.d.cts","names":[],"sources":["../src/schema/components.ts","../src/schema/icons.ts","../src/schema/schema.ts"],"mappings":";;;cAoBa,qBAAmB,IAAA;;;;;;;;;;;;;;;;;;GAyB9B,IAAA,KAAA;KAEU,gBAAgB,IAAE,aAAa;;;;;;;;cAS9B,sBAAoB,IAAA;;;;;;;;;;;;;;;;;GAiB/B,IAAA,KAAA;KAEU,iBAAiB,IAAE,aAAa;cAE/B,iBAAe,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsB1B,IAAA,KAAA;KAEU,YAAY,IAAE,aAAa;cAE1B,kBAAgB,IAAA,UAAA,IAAA,WAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAwC,IAAA,KAAA;KAEzD,aAAa,IAAE,aAAa;;;cCrF3B,gBAAc,IAAA;;;;;;;;;;;;;;;GAkBzB,IAAA,KAAA;KAEU,WAAW,IAAE,aAAa;cAEzB,YAAU,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAarB,IAAA,KAAA;KAEU,OAAO,IAAE,aAAa;cAErB,aAAW,IAAA,UAAA,IAAA,WAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAmC,IAAA,KAAA;KAE/C,QAAQ,IAAE,aAAa;;;UC9BlB;EACf;EACA;EACA;EACA;EACA;EACA;EACA,YAAY;EACZ,OAAO;EACP,QAAQ,SAAS,eAAe;;cAGrB,QAAQ,EAAE,QAAQ"}
|
|
@@ -247,6 +247,12 @@ type Icons = z$1.infer<typeof iconsSchema>;
|
|
|
247
247
|
//#endregion
|
|
248
248
|
//#region src/schema/schema.d.ts
|
|
249
249
|
interface Schema {
|
|
250
|
+
name?: string;
|
|
251
|
+
title?: string;
|
|
252
|
+
repository?: string;
|
|
253
|
+
homepage?: string;
|
|
254
|
+
description?: string;
|
|
255
|
+
logo?: string;
|
|
250
256
|
components: Components;
|
|
251
257
|
icons: Icons;
|
|
252
258
|
tokens: Tokens | Record<string, Tokens>;
|
|
@@ -254,4 +260,4 @@ interface Schema {
|
|
|
254
260
|
declare const schema: z.ZodType<Schema>;
|
|
255
261
|
//#endregion
|
|
256
262
|
export { Icons as a, iconsSchema as c, ComponentUsage as d, Components as f, componentsSchema as g, componentUsageSchema as h, IconFile as i, Component as l, componentSchema as m, schema as n, iconFileSchema as o, componentFileSchema as p, Icon as r, iconSchema as s, Schema as t, ComponentFile as u };
|
|
257
|
-
//# sourceMappingURL=schema-
|
|
263
|
+
//# sourceMappingURL=schema-BihaPsfF.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-BihaPsfF.d.mts","names":[],"sources":["../src/schema/components.ts","../src/schema/icons.ts","../src/schema/schema.ts"],"mappings":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e,{z as t}from"zod";import{tokenSchema as n,tokensSchema as r,tokensSchema as i}from"@power-plant/dtcg-schema";const a=t.object({path:t.string(),type:t.enum([`lib`,`block`,`component`,`ui`,`hook`,`theme`,`page`,`file`,`style`,`base`,`font`,`item`]).optional(),content:t.string().optional(),target:t.string().optional().describe(`The target path of the file. This is the path to the file in the project. Supports registry target placeholders @components/, @ui/, @lib/, and @hooks/, which resolve to the corresponding aliases configured in components.json. These placeholders are independent of the project's import prefix.`)}),o=t.object({name:t.string().optional().describe(`Stable usage example id. Defaults to the source filename without extension.`),title:t.string().optional(),description:t.string().optional(),path:t.string(),content:t.string().optional(),language:t.enum([`tsx`,`jsx`,`ts`,`js`,`mdx`,`md`,`css`,`html`,`txt`]).optional().describe(`Source language for syntax highlighting. Inferred from the file extension when omitted.`)}),s=t.object({name:t.string(),title:t.string(),type:t.enum([`block`,`component`,`ui`,`page`]).default(`component`),category:t.string().optional(),description:t.string().optional(),tags:t.array(t.string()).optional(),related:t.array(t.string()).optional(),since:t.string().optional(),version:t.string().optional(),repository:t.string().optional(),homepage:t.string().optional(),dependencies:t.record(t.string(),t.string()).optional(),devDependencies:t.record(t.string(),t.string()).optional(),registryDependencies:t.record(t.string(),t.string()).optional(),files:t.array(a).optional(),usage:t.array(o).optional().describe("Example usage snippets for this component. Prefer a `usage/` directory of source files; entries may also be declared in metadata.")}),c=t.record(t.string(),s),l=t.object({path:t.string(),type:t.enum([`svg`,`png`,`webp`,`jpg`,`jpeg`,`gif`,`ico`,`file`]).optional(),content:t.string().optional(),theme:t.string().optional().describe(`Optional theme variant for this asset (for example light or dark).`),target:t.string().optional().describe(`The target path of the file in the project. Supports registry-style placeholders independent of the project's import prefix.`)}),u=t.object({name:t.string(),title:t.string(),category:t.string().optional(),description:t.string().optional(),tags:t.array(t.string()).optional(),aliases:t.array(t.string()).optional(),related:t.array(t.string()).optional(),since:t.string().optional(),version:t.string().optional(),repository:t.string().optional(),homepage:t.string().optional(),files:t.array(l).optional()}),d=t.record(t.string(),u),f=e.union([r,e.record(e.string(),r)]),p=e.object({tokens:f,components:c,icons:d});export{u as a,s as c,l as i,o as l,i as n,d as o,p as r,a as s,n as t,c as u};
|
|
2
|
-
//# sourceMappingURL=schema-
|
|
1
|
+
import e,{z as t}from"zod";import{tokenSchema as n,tokensSchema as r,tokensSchema as i}from"@power-plant/dtcg-schema";const a=t.object({path:t.string(),type:t.enum([`lib`,`block`,`component`,`ui`,`hook`,`theme`,`page`,`file`,`style`,`base`,`font`,`item`]).optional(),content:t.string().optional(),target:t.string().optional().describe(`The target path of the file. This is the path to the file in the project. Supports registry target placeholders @components/, @ui/, @lib/, and @hooks/, which resolve to the corresponding aliases configured in components.json. These placeholders are independent of the project's import prefix.`)}),o=t.object({name:t.string().optional().describe(`Stable usage example id. Defaults to the source filename without extension.`),title:t.string().optional(),description:t.string().optional(),path:t.string(),content:t.string().optional(),language:t.enum([`tsx`,`jsx`,`ts`,`js`,`mdx`,`md`,`css`,`html`,`txt`]).optional().describe(`Source language for syntax highlighting. Inferred from the file extension when omitted.`)}),s=t.object({name:t.string(),title:t.string(),type:t.enum([`block`,`component`,`ui`,`page`]).default(`component`),category:t.string().optional(),description:t.string().optional(),tags:t.array(t.string()).optional(),related:t.array(t.string()).optional(),since:t.string().optional(),version:t.string().optional(),repository:t.string().optional(),homepage:t.string().optional(),dependencies:t.record(t.string(),t.string()).optional(),devDependencies:t.record(t.string(),t.string()).optional(),registryDependencies:t.record(t.string(),t.string()).optional(),files:t.array(a).optional(),usage:t.array(o).optional().describe("Example usage snippets for this component. Prefer a `usage/` directory of source files; entries may also be declared in metadata.")}),c=t.record(t.string(),s),l=t.object({path:t.string(),type:t.enum([`svg`,`png`,`webp`,`jpg`,`jpeg`,`gif`,`ico`,`file`]).optional(),content:t.string().optional(),theme:t.string().optional().describe(`Optional theme variant for this asset (for example light or dark).`),target:t.string().optional().describe(`The target path of the file in the project. Supports registry-style placeholders independent of the project's import prefix.`)}),u=t.object({name:t.string(),title:t.string(),category:t.string().optional(),description:t.string().optional(),tags:t.array(t.string()).optional(),aliases:t.array(t.string()).optional(),related:t.array(t.string()).optional(),since:t.string().optional(),version:t.string().optional(),repository:t.string().optional(),homepage:t.string().optional(),files:t.array(l).optional()}),d=t.record(t.string(),u),f=e.union([r,e.record(e.string(),r)]),p=e.object({name:e.string().optional(),title:e.string().optional(),repository:e.string().optional(),homepage:e.string().optional(),description:e.string().optional(),logo:e.string().optional(),tokens:f,components:c,icons:d});export{u as a,s as c,l as i,o as l,i as n,d as o,p as r,a as s,n as t,c as u};
|
|
2
|
+
//# sourceMappingURL=schema-buR6a6IP.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-buR6a6IP.mjs","names":[],"sources":[],"mappings":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{n as e}from"./utils-Dyd9gGJ-.mjs";import t from"style-dictionary";import{existsSync as n}from"@stryke/fs/exists";import{isDirectory as r}from"@stryke/fs/is-file";import{joinPaths as i}from"@stryke/path/join";import{isSetString as a}from"@stryke/type-checks/is-set-string";import{basename as o,isAbsolute as s,resolve as c}from"node:path";import{isFunction as l}from"@stryke/type-checks/is-function";import{importModule as u}from"@stryke/fs/resolve";import d from"fast-glob";import ee from"json5";import{parse as te}from"smol-toml";import{parse as f}from"yaml";const p=[`razorwind-json`,`razorwind-yaml`,`razorwind-toml`,`razorwind-css`],m=[`json`,`json5`,`jsonc`,`yaml`,`yml`,`toml`,`css`,`js`,`mjs`,`cjs`,`ts`,`mts`,`cts`],ne=m.join(`,`),h=[`tokens.json`,`tokens.json5`,`tokens.jsonc`,`tokens.yaml`,`tokens.yml`,`tokens.toml`,`tokens.css`,`design-tokens.json`,`design-tokens.yaml`,`design-tokens.yml`,`tokens`,`design-tokens`,`src/tokens`,`src/design-tokens`,`packages/tokens`,`style-dictionary.config.js`,`style-dictionary.config.mjs`,`style-dictionary.config.ts`,`sd.config.js`,`sd.config.mjs`,`sd.config.ts`],g=`**/*.{${ne}}`,_=/^(light|dark|dim|dimmed|high-contrast|hc|protanopia|deuteranopia|tritanopia|achromatopsia|achromatomaly|monochrome|monochromatic|grayscale|greyscale|bw|black-and-white|black-white|blackWhite|default|base|theme)([._-].+)?$/i,v={color:`color`,colours:`color`,colors:`color`,colour:`color`,palette:`color`,bg:`color`,background:`color`,foreground:`color`,fg:`color`,border:`color`,fill:`color`,stroke:`color`,spacing:`dimension`,space:`dimension`,size:`dimension`,sizes:`dimension`,sizing:`dimension`,gap:`dimension`,radius:`dimension`,radii:`dimension`,rounded:`dimension`,width:`dimension`,height:`dimension`,dimension:`dimension`,dimensions:`dimension`,duration:`duration`,durations:`duration`,time:`duration`,delay:`duration`,animation:`duration`,motion:`duration`,transition:`duration`,font:`fontFamily`,fonts:`fontFamily`,fontfamily:`fontFamily`,"font-family":`fontFamily`,typeface:`fontFamily`,fontweight:`fontWeight`,"font-weight":`fontWeight`,weight:`fontWeight`,opacity:`number`,opacities:`number`,zindex:`number`,"z-index":`number`,lineheight:`number`,"line-height":`number`,letterspacing:`dimension`,"letter-spacing":`dimension`,shadow:`shadow`,shadows:`shadow`,elevation:`shadow`,gradient:`gradient`,gradients:`gradient`,typography:`typography`,text:`typography`,cubicbezier:`cubicBezier`,easing:`cubicBezier`,ease:`cubicBezier`},re=/^#(?:[0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i,ie=/^rgba?\(\s*([+\d.]+%?)[\x09-\x0D\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?: |(?: \s*)?,)\s*([+\d.]+%?)[\x09-\x0D\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?: |(?: \s*)?,)\s*([+\d.]+%?)(?:\s*[,/]\s*([+\d.]+%?))?\s*\)$/i,ae=/^hsla?\(\s*([+\d.]+)[\x09-\x0D\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?: |(?: \s*)?,)\s*([+\d.]+)%[\x09-\x0D\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?: |(?: \s*)?,)\s*([+\d.]+)%(?:\s*[,/]\s*([+\d.]+%?))?\s*\)$/i,oe=/^oklch\(\s*([+\d.]+%?|none)\s+([+\d.]+|none)\s+([+\d.]+|none)(?:\s*\/\s*([+\d.]+%?))?\s*\)$/i,y=/^([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*(px|rem|em|%|vh|vw|vmin|vmax|ch|ex|cm|mm|in|pt|pc)$/i,b=/^([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*(ms|s)$/i,se=/^cubic-bezier\(\s*([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*,\s*([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*,\s*([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*,\s*([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*\)$/i,ce=/^var\(\s*(--[\w-]+)\s*(?:,\s*(?:\S.*|[\t\v\f \xA0\u1680\u2000-\u200A\u202F\u205F\u3000\uFEFF]))?\)\s*$/i,le=/^\{[^{}]+\}$/,ue={thin:100,hairline:100,extralight:200,"extra-light":200,ultralight:200,light:300,normal:400,regular:400,book:400,medium:500,semibold:600,"semi-bold":600,demibold:600,bold:700,extrabold:800,"extra-bold":800,ultrabold:800,black:900,heavy:900},x=new Set([`px`,`rem`]);function S(e){return Math.min(1,Math.max(0,e))}function C(e,t=100){let n=e.trim();if(n.endsWith(`%`))return S(Number.parseFloat(n)/t);let r=Number.parseFloat(n);return S(r>1?r/255:r)}function w(e){let t=e.slice(1);return t.length===3||t.length===4?`#${[...t].map(e=>e+e).join(``)}`:(e.length===7||e.length,e)}function T(e){let t=w(e.toLowerCase()).slice(1),n=Number.parseInt(t.slice(0,2),16)/255,r=Number.parseInt(t.slice(2,4),16)/255,i=Number.parseInt(t.slice(4,6),16)/255,a=t.length===8?Number.parseInt(t.slice(6,8),16)/255:void 0;return{colorSpace:`srgb`,components:[n,r,i],...a===void 0||a===1?{}:{alpha:a},hex:`#${t.slice(0,6)}`}}function E(e){return`{${e.replace(/^--/,``).split(`-`).filter(Boolean).join(`.`)}}`}function D(e){return`$value`in e||`value`in e||`$ref`in e||`ref`in e}function O(e){for(let t=e.length-1;t>=0;t--){let n=e[t]?.toLowerCase();if(!n)continue;let r=v[n];if(r)return r}}function k(t,n=[]){let r=O(n);if(typeof t==`string`){let e=t.trim();if(le.test(e))return{value:e,type:r};let i=e.match(ce);if(i?.[1])return{value:E(i[1]),type:r};if(re.test(e))return{value:T(e),type:`color`};let a=e.match(ie);if(a){let e=[C(a[1]),C(a[2]),C(a[3])],t=a[4]?a[4].endsWith(`%`)?S(Number.parseFloat(a[4])/100):S(Number.parseFloat(a[4])):void 0;return{value:{colorSpace:`srgb`,components:e,...t===void 0||Number.isNaN(t)?{}:{alpha:t}},type:`color`}}let o=e.match(ae);if(o)return{value:{colorSpace:`hsl`,components:[Number.parseFloat(o[1]),Number.parseFloat(o[2]),Number.parseFloat(o[3])],...o[4]?{alpha:o[4].endsWith(`%`)?S(Number.parseFloat(o[4])/100):S(Number.parseFloat(o[4]))}:{}},type:`color`};let s=e.match(oe);if(s){let e=e=>e===`none`?`none`:e.endsWith(`%`)?Number.parseFloat(e)/100:Number.parseFloat(e);return{value:{colorSpace:`oklch`,components:[e(s[1]),e(s[2]),e(s[3])],...s[4]?{alpha:s[4].endsWith(`%`)?S(Number.parseFloat(s[4])/100):S(Number.parseFloat(s[4]))}:{}},type:`color`}}let c=e.match(y);if(c){let t=c[2].toLowerCase(),n=Number.parseFloat(c[1]);return x.has(t)?{value:{value:n,unit:t},type:`dimension`}:{value:e,type:r===`dimension`?void 0:r}}let l=e.match(b);if(l)return{value:{value:Number.parseFloat(l[1]),unit:l[2].toLowerCase()},type:`duration`};let u=e.match(se);if(u)return{value:[Number.parseFloat(u[1]),Number.parseFloat(u[2]),Number.parseFloat(u[3]),Number.parseFloat(u[4])],type:`cubicBezier`};let d=ue[e.toLowerCase()];return d===void 0?r===`fontFamily`||/family|font|typeface/i.test(n.at(-1)??``)?e.includes(`,`)?{value:e.split(`,`).map(e=>e.trim().replace(/^["']|["']$/g,``)),type:`fontFamily`}:{value:e.replace(/^["']|["']$/g,``),type:`fontFamily`}:r===`color`&&!e.startsWith(`{`)?{value:e,type:void 0}:{value:e,type:r}:{value:d,type:`fontWeight`}}if(typeof t==`number`)return r===`fontWeight`?{value:t,type:`fontWeight`}:r===`duration`?{value:{value:t,unit:`ms`},type:`duration`}:r===`dimension`?{value:{value:t,unit:`px`},type:`dimension`}:{value:t,type:r??`number`};if(Array.isArray(t))return t.length===4&&t.every(e=>typeof e==`number`)&&(r===`cubicBezier`||n.some(e=>/ease|bezier/i.test(e)))?{value:t,type:`cubicBezier`}:t.every(e=>typeof e==`string`)?{value:t,type:r??`fontFamily`}:{value:t,type:r};if(e(t)){if(`colorSpace`in t&&`components`in t)return{value:t,type:`color`};if(`value`in t&&`unit`in t){let e=String(t.unit).toLowerCase();return e===`ms`||e===`s`?{value:t,type:`duration`}:x.has(e)?{value:t,type:`dimension`}:{value:t,type:r}}}return{value:t,type:r}}function de(e,t){let n={...e};if(`value`in n&&!(`$value`in n)&&(n.$value=n.value,delete n.value),`type`in n&&!(`$type`in n)&&(n.$type=n.type,delete n.type),`comment`in n&&!(`$description`in n)&&(n.$description=n.comment,delete n.comment),`description`in n&&!(`$description`in n)&&(n.$description=n.description,delete n.description),`ref`in n&&!(`$ref`in n)&&(n.$ref=n.ref,delete n.ref),`$value`in n){let e=k(n.$value,t);n.$value=e.value,!(`$type`in n)&&e.type&&(n.$type=e.type)}return n}function A(t,n=[]){if(Array.isArray(t))return t.map((e,t)=>A(e,[...n,String(t)]));if(!e(t))return t;if(D(t))return de(t,n);let r={};for(let[e,i]of Object.entries(t)){if(e.startsWith(`$`)){r[e]=i;continue}r[e]=A(i,[...n,e])}if(!(`$type`in r)){let e=O(n);e&&n.length>0&&(r.$type=e)}return r}function j(t){let n={};for(let[r,i]of Object.entries(t)){let t=r.replace(/^--/,``).split(/[-./]/).filter(Boolean);if(t.length===0)continue;let a=n;for(let n=0;n<t.length-1;n++){let r=t[n],i=a[r];e(i)?D(i)&&(a[r]={DEFAULT:i}):a[r]={},a=a[r]}let o=t.at(-1),s=k(i,t),c={$value:s.value,...s.type?{$type:s.type}:{}},l=a[o];e(l)&&!D(l)?l.DEFAULT=c:a[o]=c}return A(n)}const fe=/(--[A-Z_][\w-]*)\s*:\s*([^;}{]+?)(?=\s*(?:;|\}|$))/gi;function M(e){let t={},n=e.replace(/\/\*[\s\S]*?\*\//g,``);for(let e of n.matchAll(fe)){let n=e[1],r=e[2]?.trim();!n||!r||(t[n]=r)}return j(t)}const N=`razorwind-infer`;function P(e){if(e==null)return{};if(typeof e!=`object`||Array.isArray(e))throw TypeError(`Token file must parse to a plain object.`);return A(e)}function F(e){try{return P(ee.parse(e))}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Failed to parse JSON token file: ${t}`)}}function I(e){try{return P(f(e))}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Failed to parse YAML token file: ${t}`)}}function L(e){try{return P(te(e))}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Failed to parse TOML token file: ${t}`)}}const R=[{name:`razorwind-json`,pattern:/\.json[c5]?$/i,parser:({contents:e})=>F(e)},{name:`razorwind-yaml`,pattern:/\.ya?ml$/i,parser:({contents:e})=>I(e)},{name:`razorwind-toml`,pattern:/\.toml$/i,parser:({contents:e})=>L(e)},{name:`razorwind-css`,pattern:/\.css$/i,parser:({contents:e})=>A(M(e))}];function z(){return Object.fromEntries(R.map(({name:e,pattern:t,parser:n})=>[e,{pattern:t,parser:n}]))}function B(e){return A(e)}function V(){return{[N]:B}}function H(e=[],n=t){for(let e of R)n.registerParser(e);n.registerPreprocessor({name:N,preprocessor:B});let r=0,i=0;for(let t of e){for(let e of t.parsers??[])n.registerParser({name:e.name??`${t.name}-parser-${r}`,pattern:e.pattern,parser:({contents:t})=>e.parser(t)}),r++;for(let e of t.preprocessors??[])n.registerPreprocessor(l(e)?{name:`${t.name}-preprocessor-${i}`,preprocessor:e}:{name:e.name??`${t.name}-preprocessor-${i}`,preprocessor:e.preprocessor}),i++}}const pe=H;function U(e,t){return s(t)?t:c(e,t)}function W(e){return/\.([^.]+)$/.exec(e)?.[1]?.toLowerCase()??``}function G(e){return m.includes(W(e))}function K(e){let t=e.split(/[/\\]/).pop()?.toLowerCase()??``;return t.startsWith(`style-dictionary.config.`)||t.startsWith(`sd.config.`)}function q(e){return i(e,g)}function me(e){return Array.isArray(e)?e.filter(a):a(e)?[e]:[]}function he(e,t){let i=U(e,t);if(!n(i))throw Error(`tokensPath "${t}" does not exist (resolved: ${i}).`);return r(i)?{resolvedPath:i,source:[q(i)],isStyleDictionaryConfig:!1}:K(i)?{resolvedPath:i,source:[],isStyleDictionaryConfig:!0}:{resolvedPath:i,source:[i],isStyleDictionaryConfig:!1}}function J(e){let{cwd:t,tokensPath:i,fallbackPaths:a=[]}=e,o=me(i);if(o.length>0){let e=o.map(e=>he(t,e)),n=e.filter(e=>e.isStyleDictionaryConfig);if(n.length>0){if(e.length>1)throw Error(`tokensPath cannot mix Style Dictionary config files with other token sources.`);return{resolvedPath:n[0].resolvedPath,source:[],origin:`tokensPath`}}return{resolvedPath:e[0]?.resolvedPath,source:e.flatMap(e=>e.source),origin:`tokensPath`}}for(let e of h){let i=U(t,e);if(n(i)){if(r(i))return{resolvedPath:i,source:[q(i)],origin:`default`};if(K(i))return{resolvedPath:i,source:[],origin:`default`};if(G(i))return{resolvedPath:i,source:[i],origin:`default`}}}for(let e of a){if(!e)continue;let i=U(t,e);if(!(!n(i)||r(i))&&(G(i)||W(i)===`css`))return{resolvedPath:i,source:[i],origin:`fallback`}}return{source:[],origin:`none`}}function Y(e){return(e.split(/[/\\]/).pop()??``).replace(/\.[^.]+$/,``).match(_)?.[1]?.toLowerCase()}function ge(e){H(e.plugins,t)}function X(e){return!e||typeof e!=`object`||Object.keys(e).length===0}async function _e(e){let t=await u(e);return t&&typeof t==`object`&&`default`in t&&t.default?t.default:t}async function Z(e,n){ge(e);let r=new t({...n,parsers:[...p,...n.parsers??[]],preprocessors:[N,...n.preprocessors??[]],hooks:{...n.hooks,parsers:{...z(),...n.hooks?.parsers},preprocessors:{...V(),...n.hooks?.preprocessors}},usesDtcg:n.usesDtcg??!0,platforms:n.platforms??{}});return await r.hasInitialized,r}async function Q(e,t){return t.length===0?{}:(await Z(e,{source:t})).tokens}async function ve(e){return(await d(e,{absolute:!0,onlyFiles:!0,unique:!0})).sort()}async function ye(e,t){let n=await ve(t);if(n.length===0)return{};let r=new Map,i=[];for(let e of n){let t=Y(e);if(t){let n=r.get(t)??[];n.push(e),r.set(t,n)}else i.push(e)}if(r.size<2)return Q(e,t);let a={};if(i.length>0){let t=await Q(e,i);X(t)||(a.base=t)}for(let[t,n]of r)a[t]=await Q(e,n);return a}async function $(e){let t=J(e.options);return t.resolvedPath&&n(t.resolvedPath)&&/(?:^|[/\\])(?:style-dictionary|sd)\.config\./i.test(o(t.resolvedPath))?(e.sd=await Z(e.options,await _e(t.resolvedPath)),e.sd.tokens):t.source.length===0?{}:e.options.splitThemes?ye(e.options,t.source):Q(e.options,t.source)}async function be(e){let t=await $(e);if(X(t)){let{tokensPath:t}=e.options,n=Array.isArray(t)?t.length>0?`tokensPath=[${t.map(e=>`"${e}"`).join(`, `)}]`:`default token paths / CSS fallbacks`:a(t)?`tokensPath="${t}"`:`default token paths / CSS fallbacks`;throw Error(`No design tokens found via ${n}. Provide tokensPath or add a tokens file.`)}return t}export{_,N as a,p as b,B as c,M as d,O as f,h as g,A as h,Y as i,H as l,j as m,be as n,z as o,k as p,J as r,V as s,$ as t,pe as u,g as v,v as x,m as y};
|
|
2
|
-
//# sourceMappingURL=tokens-
|
|
1
|
+
import{n as e}from"./utils-B5uabOd5.mjs";import t from"style-dictionary";import{existsSync as n}from"@stryke/fs/exists";import{isDirectory as r}from"@stryke/fs/is-file";import{joinPaths as i}from"@stryke/path/join";import{isSetString as a}from"@stryke/type-checks/is-set-string";import{basename as o,isAbsolute as s,resolve as c}from"node:path";import{isFunction as l}from"@stryke/type-checks/is-function";import{importModule as u}from"@stryke/fs/resolve";import d from"fast-glob";import ee from"json5";import{parse as te}from"smol-toml";import{parse as f}from"yaml";const p=[`razorwind-json`,`razorwind-yaml`,`razorwind-toml`,`razorwind-css`],m=[`json`,`json5`,`jsonc`,`yaml`,`yml`,`toml`,`css`,`js`,`mjs`,`cjs`,`ts`,`mts`,`cts`],ne=m.join(`,`),h=[`tokens.json`,`tokens.json5`,`tokens.jsonc`,`tokens.yaml`,`tokens.yml`,`tokens.toml`,`tokens.css`,`design-tokens.json`,`design-tokens.yaml`,`design-tokens.yml`,`tokens`,`design-tokens`,`src/tokens`,`src/design-tokens`,`packages/tokens`,`style-dictionary.config.js`,`style-dictionary.config.mjs`,`style-dictionary.config.ts`,`sd.config.js`,`sd.config.mjs`,`sd.config.ts`],g=`**/*.{${ne}}`,_=/^(light|dark|dim|dimmed|high-contrast|hc|protanopia|deuteranopia|tritanopia|achromatopsia|achromatomaly|monochrome|monochromatic|grayscale|greyscale|bw|black-and-white|black-white|blackWhite|default|base|theme)([._-].+)?$/i,v={color:`color`,colours:`color`,colors:`color`,colour:`color`,palette:`color`,bg:`color`,background:`color`,foreground:`color`,fg:`color`,border:`color`,fill:`color`,stroke:`color`,spacing:`dimension`,space:`dimension`,size:`dimension`,sizes:`dimension`,sizing:`dimension`,gap:`dimension`,radius:`dimension`,radii:`dimension`,rounded:`dimension`,width:`dimension`,height:`dimension`,dimension:`dimension`,dimensions:`dimension`,duration:`duration`,durations:`duration`,time:`duration`,delay:`duration`,animation:`duration`,motion:`duration`,transition:`duration`,font:`fontFamily`,fonts:`fontFamily`,fontfamily:`fontFamily`,"font-family":`fontFamily`,typeface:`fontFamily`,fontweight:`fontWeight`,"font-weight":`fontWeight`,weight:`fontWeight`,opacity:`number`,opacities:`number`,zindex:`number`,"z-index":`number`,lineheight:`number`,"line-height":`number`,letterspacing:`dimension`,"letter-spacing":`dimension`,shadow:`shadow`,shadows:`shadow`,elevation:`shadow`,gradient:`gradient`,gradients:`gradient`,typography:`typography`,text:`typography`,cubicbezier:`cubicBezier`,easing:`cubicBezier`,ease:`cubicBezier`},re=/^#(?:[0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i,ie=/^rgba?\(\s*([+\d.]+%?)[\x09-\x0D\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?: |(?: \s*)?,)\s*([+\d.]+%?)[\x09-\x0D\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?: |(?: \s*)?,)\s*([+\d.]+%?)(?:\s*[,/]\s*([+\d.]+%?))?\s*\)$/i,ae=/^hsla?\(\s*([+\d.]+)[\x09-\x0D\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?: |(?: \s*)?,)\s*([+\d.]+)%[\x09-\x0D\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?: |(?: \s*)?,)\s*([+\d.]+)%(?:\s*[,/]\s*([+\d.]+%?))?\s*\)$/i,oe=/^oklch\(\s*([+\d.]+%?|none)\s+([+\d.]+|none)\s+([+\d.]+|none)(?:\s*\/\s*([+\d.]+%?))?\s*\)$/i,y=/^([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*(px|rem|em|%|vh|vw|vmin|vmax|ch|ex|cm|mm|in|pt|pc)$/i,b=/^([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*(ms|s)$/i,se=/^cubic-bezier\(\s*([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*,\s*([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*,\s*([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*,\s*([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*\)$/i,ce=/^var\(\s*(--[\w-]+)\s*(?:,\s*(?:\S.*|[\t\v\f \xA0\u1680\u2000-\u200A\u202F\u205F\u3000\uFEFF]))?\)\s*$/i,le=/^\{[^{}]+\}$/,ue={thin:100,hairline:100,extralight:200,"extra-light":200,ultralight:200,light:300,normal:400,regular:400,book:400,medium:500,semibold:600,"semi-bold":600,demibold:600,bold:700,extrabold:800,"extra-bold":800,ultrabold:800,black:900,heavy:900},x=new Set([`px`,`rem`]);function S(e){return Math.min(1,Math.max(0,e))}function C(e,t=100){let n=e.trim();if(n.endsWith(`%`))return S(Number.parseFloat(n)/t);let r=Number.parseFloat(n);return S(r>1?r/255:r)}function w(e){let t=e.slice(1);return t.length===3||t.length===4?`#${[...t].map(e=>e+e).join(``)}`:(e.length===7||e.length,e)}function T(e){let t=w(e.toLowerCase()).slice(1),n=Number.parseInt(t.slice(0,2),16)/255,r=Number.parseInt(t.slice(2,4),16)/255,i=Number.parseInt(t.slice(4,6),16)/255,a=t.length===8?Number.parseInt(t.slice(6,8),16)/255:void 0;return{colorSpace:`srgb`,components:[n,r,i],...a===void 0||a===1?{}:{alpha:a},hex:`#${t.slice(0,6)}`}}function E(e){return`{${e.replace(/^--/,``).split(`-`).filter(Boolean).join(`.`)}}`}function D(e){return`$value`in e||`value`in e||`$ref`in e||`ref`in e}function O(e){for(let t=e.length-1;t>=0;t--){let n=e[t]?.toLowerCase();if(!n)continue;let r=v[n];if(r)return r}}function k(t,n=[]){let r=O(n);if(typeof t==`string`){let e=t.trim();if(le.test(e))return{value:e,type:r};let i=e.match(ce);if(i?.[1])return{value:E(i[1]),type:r};if(re.test(e))return{value:T(e),type:`color`};let a=e.match(ie);if(a){let e=[C(a[1]),C(a[2]),C(a[3])],t=a[4]?a[4].endsWith(`%`)?S(Number.parseFloat(a[4])/100):S(Number.parseFloat(a[4])):void 0;return{value:{colorSpace:`srgb`,components:e,...t===void 0||Number.isNaN(t)?{}:{alpha:t}},type:`color`}}let o=e.match(ae);if(o)return{value:{colorSpace:`hsl`,components:[Number.parseFloat(o[1]),Number.parseFloat(o[2]),Number.parseFloat(o[3])],...o[4]?{alpha:o[4].endsWith(`%`)?S(Number.parseFloat(o[4])/100):S(Number.parseFloat(o[4]))}:{}},type:`color`};let s=e.match(oe);if(s){let e=e=>e===`none`?`none`:e.endsWith(`%`)?Number.parseFloat(e)/100:Number.parseFloat(e);return{value:{colorSpace:`oklch`,components:[e(s[1]),e(s[2]),e(s[3])],...s[4]?{alpha:s[4].endsWith(`%`)?S(Number.parseFloat(s[4])/100):S(Number.parseFloat(s[4]))}:{}},type:`color`}}let c=e.match(y);if(c){let t=c[2].toLowerCase(),n=Number.parseFloat(c[1]);return x.has(t)?{value:{value:n,unit:t},type:`dimension`}:{value:e,type:r===`dimension`?void 0:r}}let l=e.match(b);if(l)return{value:{value:Number.parseFloat(l[1]),unit:l[2].toLowerCase()},type:`duration`};let u=e.match(se);if(u)return{value:[Number.parseFloat(u[1]),Number.parseFloat(u[2]),Number.parseFloat(u[3]),Number.parseFloat(u[4])],type:`cubicBezier`};let d=ue[e.toLowerCase()];return d===void 0?r===`fontFamily`||/family|font|typeface/i.test(n.at(-1)??``)?e.includes(`,`)?{value:e.split(`,`).map(e=>e.trim().replace(/^["']|["']$/g,``)),type:`fontFamily`}:{value:e.replace(/^["']|["']$/g,``),type:`fontFamily`}:r===`color`&&!e.startsWith(`{`)?{value:e,type:void 0}:{value:e,type:r}:{value:d,type:`fontWeight`}}if(typeof t==`number`)return r===`fontWeight`?{value:t,type:`fontWeight`}:r===`duration`?{value:{value:t,unit:`ms`},type:`duration`}:r===`dimension`?{value:{value:t,unit:`px`},type:`dimension`}:{value:t,type:r??`number`};if(Array.isArray(t))return t.length===4&&t.every(e=>typeof e==`number`)&&(r===`cubicBezier`||n.some(e=>/ease|bezier/i.test(e)))?{value:t,type:`cubicBezier`}:t.every(e=>typeof e==`string`)?{value:t,type:r??`fontFamily`}:{value:t,type:r};if(e(t)){if(`colorSpace`in t&&`components`in t)return{value:t,type:`color`};if(`value`in t&&`unit`in t){let e=String(t.unit).toLowerCase();return e===`ms`||e===`s`?{value:t,type:`duration`}:x.has(e)?{value:t,type:`dimension`}:{value:t,type:r}}}return{value:t,type:r}}function de(e,t){let n={...e};if(`value`in n&&!(`$value`in n)&&(n.$value=n.value,delete n.value),`type`in n&&!(`$type`in n)&&(n.$type=n.type,delete n.type),`comment`in n&&!(`$description`in n)&&(n.$description=n.comment,delete n.comment),`description`in n&&!(`$description`in n)&&(n.$description=n.description,delete n.description),`ref`in n&&!(`$ref`in n)&&(n.$ref=n.ref,delete n.ref),`$value`in n){let e=k(n.$value,t);n.$value=e.value,!(`$type`in n)&&e.type&&(n.$type=e.type)}return n}function A(t,n=[]){if(Array.isArray(t))return t.map((e,t)=>A(e,[...n,String(t)]));if(!e(t))return t;if(D(t))return de(t,n);let r={};for(let[e,i]of Object.entries(t)){if(e.startsWith(`$`)){r[e]=i;continue}r[e]=A(i,[...n,e])}if(!(`$type`in r)){let e=O(n);e&&n.length>0&&(r.$type=e)}return r}function j(t){let n={};for(let[r,i]of Object.entries(t)){let t=r.replace(/^--/,``).split(/[-./]/).filter(Boolean);if(t.length===0)continue;let a=n;for(let n=0;n<t.length-1;n++){let r=t[n],i=a[r];e(i)?D(i)&&(a[r]={DEFAULT:i}):a[r]={},a=a[r]}let o=t.at(-1),s=k(i,t),c={$value:s.value,...s.type?{$type:s.type}:{}},l=a[o];e(l)&&!D(l)?l.DEFAULT=c:a[o]=c}return A(n)}const fe=/(--[A-Z_][\w-]*)\s*:\s*([^;}{]+?)(?=\s*(?:;|\}|$))/gi;function M(e){let t={},n=e.replace(/\/\*[\s\S]*?\*\//g,``);for(let e of n.matchAll(fe)){let n=e[1],r=e[2]?.trim();!n||!r||(t[n]=r)}return j(t)}const N=`razorwind-infer`;function P(e){if(e==null)return{};if(typeof e!=`object`||Array.isArray(e))throw TypeError(`Token file must parse to a plain object.`);return A(e)}function F(e){try{return P(ee.parse(e))}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Failed to parse JSON token file: ${t}`)}}function I(e){try{return P(f(e))}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Failed to parse YAML token file: ${t}`)}}function L(e){try{return P(te(e))}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Failed to parse TOML token file: ${t}`)}}const R=[{name:`razorwind-json`,pattern:/\.json[c5]?$/i,parser:({contents:e})=>F(e)},{name:`razorwind-yaml`,pattern:/\.ya?ml$/i,parser:({contents:e})=>I(e)},{name:`razorwind-toml`,pattern:/\.toml$/i,parser:({contents:e})=>L(e)},{name:`razorwind-css`,pattern:/\.css$/i,parser:({contents:e})=>A(M(e))}];function z(){return Object.fromEntries(R.map(({name:e,pattern:t,parser:n})=>[e,{pattern:t,parser:n}]))}function B(e){return A(e)}function V(){return{[N]:B}}function H(e=[],n=t){for(let e of R)n.registerParser(e);n.registerPreprocessor({name:N,preprocessor:B});let r=0,i=0;for(let t of e){for(let e of t.parsers??[])n.registerParser({name:e.name??`${t.name}-parser-${r}`,pattern:e.pattern,parser:({contents:t})=>e.parser(t)}),r++;for(let e of t.preprocessors??[])n.registerPreprocessor(l(e)?{name:`${t.name}-preprocessor-${i}`,preprocessor:e}:{name:e.name??`${t.name}-preprocessor-${i}`,preprocessor:e.preprocessor}),i++}}const pe=H;function U(e,t){return s(t)?t:c(e,t)}function W(e){return/\.([^.]+)$/.exec(e)?.[1]?.toLowerCase()??``}function G(e){return m.includes(W(e))}function K(e){let t=e.split(/[/\\]/).pop()?.toLowerCase()??``;return t.startsWith(`style-dictionary.config.`)||t.startsWith(`sd.config.`)}function q(e){return i(e,g)}function me(e){return Array.isArray(e)?e.filter(a):a(e)?[e]:[]}function he(e,t){let i=U(e,t);if(!n(i))throw Error(`tokensPath "${t}" does not exist (resolved: ${i}).`);return r(i)?{resolvedPath:i,source:[q(i)],isStyleDictionaryConfig:!1}:K(i)?{resolvedPath:i,source:[],isStyleDictionaryConfig:!0}:{resolvedPath:i,source:[i],isStyleDictionaryConfig:!1}}function J(e){let{cwd:t,tokensPath:i,fallbackPaths:a=[]}=e,o=me(i);if(o.length>0){let e=o.map(e=>he(t,e)),n=e.filter(e=>e.isStyleDictionaryConfig);if(n.length>0){if(e.length>1)throw Error(`tokensPath cannot mix Style Dictionary config files with other token sources.`);return{resolvedPath:n[0].resolvedPath,source:[],origin:`tokensPath`}}return{resolvedPath:e[0]?.resolvedPath,source:e.flatMap(e=>e.source),origin:`tokensPath`}}for(let e of h){let i=U(t,e);if(n(i)){if(r(i))return{resolvedPath:i,source:[q(i)],origin:`default`};if(K(i))return{resolvedPath:i,source:[],origin:`default`};if(G(i))return{resolvedPath:i,source:[i],origin:`default`}}}for(let e of a){if(!e)continue;let i=U(t,e);if(!(!n(i)||r(i))&&(G(i)||W(i)===`css`))return{resolvedPath:i,source:[i],origin:`fallback`}}return{source:[],origin:`none`}}function Y(e){return(e.split(/[/\\]/).pop()??``).replace(/\.[^.]+$/,``).match(_)?.[1]?.toLowerCase()}function ge(e){H(e.plugins,t)}function X(e){return!e||typeof e!=`object`||Object.keys(e).length===0}async function _e(e){let t=await u(e);return t&&typeof t==`object`&&`default`in t&&t.default?t.default:t}async function Z(e,n){ge(e);let r=new t({...n,parsers:[...p,...n.parsers??[]],preprocessors:[N,...n.preprocessors??[]],hooks:{...n.hooks,parsers:{...z(),...n.hooks?.parsers},preprocessors:{...V(),...n.hooks?.preprocessors}},usesDtcg:n.usesDtcg??!0,platforms:n.platforms??{}});return await r.hasInitialized,r}async function Q(e,t){return t.length===0?{}:(await Z(e,{source:t})).tokens}async function ve(e){return(await d(e,{absolute:!0,onlyFiles:!0,unique:!0})).sort()}async function ye(e,t){let n=await ve(t);if(n.length===0)return{};let r=new Map,i=[];for(let e of n){let t=Y(e);if(t){let n=r.get(t)??[];n.push(e),r.set(t,n)}else i.push(e)}if(r.size<2)return Q(e,t);let a={};if(i.length>0){let t=await Q(e,i);X(t)||(a.base=t)}for(let[t,n]of r)a[t]=await Q(e,n);return a}async function $(e){let t=J(e.options);return t.resolvedPath&&n(t.resolvedPath)&&/(?:^|[/\\])(?:style-dictionary|sd)\.config\./i.test(o(t.resolvedPath))?(e.sd=await Z(e.options,await _e(t.resolvedPath)),e.sd.tokens):t.source.length===0?{}:e.options.splitThemes?ye(e.options,t.source):Q(e.options,t.source)}async function be(e){let t=await $(e);if(X(t)){let{tokensPath:t}=e.options,n=Array.isArray(t)?t.length>0?`tokensPath=[${t.map(e=>`"${e}"`).join(`, `)}]`:`default token paths / CSS fallbacks`:a(t)?`tokensPath="${t}"`:`default token paths / CSS fallbacks`;throw Error(`No design tokens found via ${n}. Provide tokensPath or add a tokens file.`)}return t}export{_,N as a,p as b,B as c,M as d,O as f,h as g,A as h,Y as i,H as l,j as m,be as n,z as o,k as p,J as r,V as s,$ as t,pe as u,g as v,v as x,m as y};
|
|
2
|
+
//# sourceMappingURL=tokens-DidKwlVV.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens-DidKwlVV.mjs","names":[],"sources":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("./rolldown-runtime-BocRIvOZ.cjs"),t=require("./utils-qX41mcuD.cjs");let n=require("style-dictionary");n=e.t(n,1);let r=require("@stryke/fs/exists"),i=require("@stryke/fs/is-file"),a=require("@stryke/path/join"),o=require("@stryke/type-checks/is-set-string"),s=require("node:path"),c=require("@stryke/type-checks/is-function"),l=require("@stryke/fs/resolve"),u=require("fast-glob");u=e.t(u,1);let d=require("json5");d=e.t(d,1);let ee=require("smol-toml"),f=require("yaml");const p=[`razorwind-json`,`razorwind-yaml`,`razorwind-toml`,`razorwind-css`],m=[`json`,`json5`,`jsonc`,`yaml`,`yml`,`toml`,`css`,`js`,`mjs`,`cjs`,`ts`,`mts`,`cts`],h=m.join(`,`),g=[`tokens.json`,`tokens.json5`,`tokens.jsonc`,`tokens.yaml`,`tokens.yml`,`tokens.toml`,`tokens.css`,`design-tokens.json`,`design-tokens.yaml`,`design-tokens.yml`,`tokens`,`design-tokens`,`src/tokens`,`src/design-tokens`,`packages/tokens`,`style-dictionary.config.js`,`style-dictionary.config.mjs`,`style-dictionary.config.ts`,`sd.config.js`,`sd.config.mjs`,`sd.config.ts`],_=`**/*.{${h}}`,v=/^(light|dark|dim|dimmed|high-contrast|hc|protanopia|deuteranopia|tritanopia|achromatopsia|achromatomaly|monochrome|monochromatic|grayscale|greyscale|bw|black-and-white|black-white|blackWhite|default|base|theme)([._-].+)?$/i,y={color:`color`,colours:`color`,colors:`color`,colour:`color`,palette:`color`,bg:`color`,background:`color`,foreground:`color`,fg:`color`,border:`color`,fill:`color`,stroke:`color`,spacing:`dimension`,space:`dimension`,size:`dimension`,sizes:`dimension`,sizing:`dimension`,gap:`dimension`,radius:`dimension`,radii:`dimension`,rounded:`dimension`,width:`dimension`,height:`dimension`,dimension:`dimension`,dimensions:`dimension`,duration:`duration`,durations:`duration`,time:`duration`,delay:`duration`,animation:`duration`,motion:`duration`,transition:`duration`,font:`fontFamily`,fonts:`fontFamily`,fontfamily:`fontFamily`,"font-family":`fontFamily`,typeface:`fontFamily`,fontweight:`fontWeight`,"font-weight":`fontWeight`,weight:`fontWeight`,opacity:`number`,opacities:`number`,zindex:`number`,"z-index":`number`,lineheight:`number`,"line-height":`number`,letterspacing:`dimension`,"letter-spacing":`dimension`,shadow:`shadow`,shadows:`shadow`,elevation:`shadow`,gradient:`gradient`,gradients:`gradient`,typography:`typography`,text:`typography`,cubicbezier:`cubicBezier`,easing:`cubicBezier`,ease:`cubicBezier`},te=/^#(?:[0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i,ne=/^rgba?\(\s*([+\d.]+%?)[\x09-\x0D\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?: |(?: \s*)?,)\s*([+\d.]+%?)[\x09-\x0D\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?: |(?: \s*)?,)\s*([+\d.]+%?)(?:\s*[,/]\s*([+\d.]+%?))?\s*\)$/i,re=/^hsla?\(\s*([+\d.]+)[\x09-\x0D\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?: |(?: \s*)?,)\s*([+\d.]+)%[\x09-\x0D\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?: |(?: \s*)?,)\s*([+\d.]+)%(?:\s*[,/]\s*([+\d.]+%?))?\s*\)$/i,ie=/^oklch\(\s*([+\d.]+%?|none)\s+([+\d.]+|none)\s+([+\d.]+|none)(?:\s*\/\s*([+\d.]+%?))?\s*\)$/i,ae=/^([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*(px|rem|em|%|vh|vw|vmin|vmax|ch|ex|cm|mm|in|pt|pc)$/i,oe=/^([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*(ms|s)$/i,se=/^cubic-bezier\(\s*([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*,\s*([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*,\s*([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*,\s*([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*\)$/i,b=/^var\(\s*(--[\w-]+)\s*(?:,\s*(?:\S.*|[\t\v\f \xA0\u1680\u2000-\u200A\u202F\u205F\u3000\uFEFF]))?\)\s*$/i,x=/^\{[^{}]+\}$/,S={thin:100,hairline:100,extralight:200,"extra-light":200,ultralight:200,light:300,normal:400,regular:400,book:400,medium:500,semibold:600,"semi-bold":600,demibold:600,bold:700,extrabold:800,"extra-bold":800,ultrabold:800,black:900,heavy:900},C=new Set([`px`,`rem`]);function w(e){return Math.min(1,Math.max(0,e))}function T(e,t=100){let n=e.trim();if(n.endsWith(`%`))return w(Number.parseFloat(n)/t);let r=Number.parseFloat(n);return w(r>1?r/255:r)}function ce(e){let t=e.slice(1);return t.length===3||t.length===4?`#${[...t].map(e=>e+e).join(``)}`:(e.length===7||e.length,e)}function le(e){let t=ce(e.toLowerCase()).slice(1),n=Number.parseInt(t.slice(0,2),16)/255,r=Number.parseInt(t.slice(2,4),16)/255,i=Number.parseInt(t.slice(4,6),16)/255,a=t.length===8?Number.parseInt(t.slice(6,8),16)/255:void 0;return{colorSpace:`srgb`,components:[n,r,i],...a===void 0||a===1?{}:{alpha:a},hex:`#${t.slice(0,6)}`}}function ue(e){return`{${e.replace(/^--/,``).split(`-`).filter(Boolean).join(`.`)}}`}function E(e){return`$value`in e||`value`in e||`$ref`in e||`ref`in e}function D(e){for(let t=e.length-1;t>=0;t--){let n=e[t]?.toLowerCase();if(!n)continue;let r=y[n];if(r)return r}}function O(e,n=[]){let r=D(n);if(typeof e==`string`){let t=e.trim();if(x.test(t))return{value:t,type:r};let i=t.match(b);if(i?.[1])return{value:ue(i[1]),type:r};if(te.test(t))return{value:le(t),type:`color`};let a=t.match(ne);if(a){let e=[T(a[1]),T(a[2]),T(a[3])],t=a[4]?a[4].endsWith(`%`)?w(Number.parseFloat(a[4])/100):w(Number.parseFloat(a[4])):void 0;return{value:{colorSpace:`srgb`,components:e,...t===void 0||Number.isNaN(t)?{}:{alpha:t}},type:`color`}}let o=t.match(re);if(o)return{value:{colorSpace:`hsl`,components:[Number.parseFloat(o[1]),Number.parseFloat(o[2]),Number.parseFloat(o[3])],...o[4]?{alpha:o[4].endsWith(`%`)?w(Number.parseFloat(o[4])/100):w(Number.parseFloat(o[4]))}:{}},type:`color`};let s=t.match(ie);if(s){let e=e=>e===`none`?`none`:e.endsWith(`%`)?Number.parseFloat(e)/100:Number.parseFloat(e);return{value:{colorSpace:`oklch`,components:[e(s[1]),e(s[2]),e(s[3])],...s[4]?{alpha:s[4].endsWith(`%`)?w(Number.parseFloat(s[4])/100):w(Number.parseFloat(s[4]))}:{}},type:`color`}}let c=t.match(ae);if(c){let e=c[2].toLowerCase(),n=Number.parseFloat(c[1]);return C.has(e)?{value:{value:n,unit:e},type:`dimension`}:{value:t,type:r===`dimension`?void 0:r}}let l=t.match(oe);if(l)return{value:{value:Number.parseFloat(l[1]),unit:l[2].toLowerCase()},type:`duration`};let u=t.match(se);if(u)return{value:[Number.parseFloat(u[1]),Number.parseFloat(u[2]),Number.parseFloat(u[3]),Number.parseFloat(u[4])],type:`cubicBezier`};let d=S[t.toLowerCase()];return d===void 0?r===`fontFamily`||/family|font|typeface/i.test(n.at(-1)??``)?t.includes(`,`)?{value:t.split(`,`).map(e=>e.trim().replace(/^["']|["']$/g,``)),type:`fontFamily`}:{value:t.replace(/^["']|["']$/g,``),type:`fontFamily`}:r===`color`&&!t.startsWith(`{`)?{value:t,type:void 0}:{value:t,type:r}:{value:d,type:`fontWeight`}}if(typeof e==`number`)return r===`fontWeight`?{value:e,type:`fontWeight`}:r===`duration`?{value:{value:e,unit:`ms`},type:`duration`}:r===`dimension`?{value:{value:e,unit:`px`},type:`dimension`}:{value:e,type:r??`number`};if(Array.isArray(e))return e.length===4&&e.every(e=>typeof e==`number`)&&(r===`cubicBezier`||n.some(e=>/ease|bezier/i.test(e)))?{value:e,type:`cubicBezier`}:e.every(e=>typeof e==`string`)?{value:e,type:r??`fontFamily`}:{value:e,type:r};if(t.n(e)){if(`colorSpace`in e&&`components`in e)return{value:e,type:`color`};if(`value`in e&&`unit`in e){let t=String(e.unit).toLowerCase();return t===`ms`||t===`s`?{value:e,type:`duration`}:C.has(t)?{value:e,type:`dimension`}:{value:e,type:r}}}return{value:e,type:r}}function de(e,t){let n={...e};if(`value`in n&&!(`$value`in n)&&(n.$value=n.value,delete n.value),`type`in n&&!(`$type`in n)&&(n.$type=n.type,delete n.type),`comment`in n&&!(`$description`in n)&&(n.$description=n.comment,delete n.comment),`description`in n&&!(`$description`in n)&&(n.$description=n.description,delete n.description),`ref`in n&&!(`$ref`in n)&&(n.$ref=n.ref,delete n.ref),`$value`in n){let e=O(n.$value,t);n.$value=e.value,!(`$type`in n)&&e.type&&(n.$type=e.type)}return n}function k(e,n=[]){if(Array.isArray(e))return e.map((e,t)=>k(e,[...n,String(t)]));if(!t.n(e))return e;if(E(e))return de(e,n);let r={};for(let[t,i]of Object.entries(e)){if(t.startsWith(`$`)){r[t]=i;continue}r[t]=k(i,[...n,t])}if(!(`$type`in r)){let e=D(n);e&&n.length>0&&(r.$type=e)}return r}function A(e){let n={};for(let[r,i]of Object.entries(e)){let e=r.replace(/^--/,``).split(/[-./]/).filter(Boolean);if(e.length===0)continue;let a=n;for(let n=0;n<e.length-1;n++){let r=e[n],i=a[r];t.n(i)?E(i)&&(a[r]={DEFAULT:i}):a[r]={},a=a[r]}let o=e.at(-1),s=O(i,e),c={$value:s.value,...s.type?{$type:s.type}:{}},l=a[o];t.n(l)&&!E(l)?l.DEFAULT=c:a[o]=c}return k(n)}const fe=/(--[A-Z_][\w-]*)\s*:\s*([^;}{]+?)(?=\s*(?:;|\}|$))/gi;function j(e){let t={},n=e.replace(/\/\*[\s\S]*?\*\//g,``);for(let e of n.matchAll(fe)){let n=e[1],r=e[2]?.trim();!n||!r||(t[n]=r)}return A(t)}const M=`razorwind-infer`;function N(e){if(e==null)return{};if(typeof e!=`object`||Array.isArray(e))throw TypeError(`Token file must parse to a plain object.`);return k(e)}function P(e){try{return N(d.default.parse(e))}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Failed to parse JSON token file: ${t}`)}}function F(e){try{return N((0,f.parse)(e))}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Failed to parse YAML token file: ${t}`)}}function I(e){try{return N((0,ee.parse)(e))}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Failed to parse TOML token file: ${t}`)}}const L=[{name:`razorwind-json`,pattern:/\.json[c5]?$/i,parser:({contents:e})=>P(e)},{name:`razorwind-yaml`,pattern:/\.ya?ml$/i,parser:({contents:e})=>F(e)},{name:`razorwind-toml`,pattern:/\.toml$/i,parser:({contents:e})=>I(e)},{name:`razorwind-css`,pattern:/\.css$/i,parser:({contents:e})=>k(j(e))}];function R(){return Object.fromEntries(L.map(({name:e,pattern:t,parser:n})=>[e,{pattern:t,parser:n}]))}function z(e){return k(e)}function B(){return{[M]:z}}function V(e=[],t=n.default){for(let e of L)t.registerParser(e);t.registerPreprocessor({name:M,preprocessor:z});let r=0,i=0;for(let n of e){for(let e of n.parsers??[])t.registerParser({name:e.name??`${n.name}-parser-${r}`,pattern:e.pattern,parser:({contents:t})=>e.parser(t)}),r++;for(let e of n.preprocessors??[])t.registerPreprocessor((0,c.isFunction)(e)?{name:`${n.name}-preprocessor-${i}`,preprocessor:e}:{name:e.name??`${n.name}-preprocessor-${i}`,preprocessor:e.preprocessor}),i++}}const pe=V;function H(e,t){return(0,s.isAbsolute)(t)?t:(0,s.resolve)(e,t)}function U(e){return/\.([^.]+)$/.exec(e)?.[1]?.toLowerCase()??``}function W(e){return m.includes(U(e))}function G(e){let t=e.split(/[/\\]/).pop()?.toLowerCase()??``;return t.startsWith(`style-dictionary.config.`)||t.startsWith(`sd.config.`)}function K(e){return(0,a.joinPaths)(e,_)}function me(e){return Array.isArray(e)?e.filter(o.isSetString):(0,o.isSetString)(e)?[e]:[]}function he(e,t){let n=H(e,t);if(!(0,r.existsSync)(n))throw Error(`tokensPath "${t}" does not exist (resolved: ${n}).`);return(0,i.isDirectory)(n)?{resolvedPath:n,source:[K(n)],isStyleDictionaryConfig:!1}:G(n)?{resolvedPath:n,source:[],isStyleDictionaryConfig:!0}:{resolvedPath:n,source:[n],isStyleDictionaryConfig:!1}}function q(e){let{cwd:t,tokensPath:n,fallbackPaths:a=[]}=e,o=me(n);if(o.length>0){let e=o.map(e=>he(t,e)),n=e.filter(e=>e.isStyleDictionaryConfig);if(n.length>0){if(e.length>1)throw Error(`tokensPath cannot mix Style Dictionary config files with other token sources.`);return{resolvedPath:n[0].resolvedPath,source:[],origin:`tokensPath`}}return{resolvedPath:e[0]?.resolvedPath,source:e.flatMap(e=>e.source),origin:`tokensPath`}}for(let e of g){let n=H(t,e);if((0,r.existsSync)(n)){if((0,i.isDirectory)(n))return{resolvedPath:n,source:[K(n)],origin:`default`};if(G(n))return{resolvedPath:n,source:[],origin:`default`};if(W(n))return{resolvedPath:n,source:[n],origin:`default`}}}for(let e of a){if(!e)continue;let n=H(t,e);if(!(!(0,r.existsSync)(n)||(0,i.isDirectory)(n))&&(W(n)||U(n)===`css`))return{resolvedPath:n,source:[n],origin:`fallback`}}return{source:[],origin:`none`}}function J(e){return(e.split(/[/\\]/).pop()??``).replace(/\.[^.]+$/,``).match(v)?.[1]?.toLowerCase()}function ge(e){V(e.plugins,n.default)}function Y(e){return!e||typeof e!=`object`||Object.keys(e).length===0}async function _e(e){let t=await(0,l.importModule)(e);return t&&typeof t==`object`&&`default`in t&&t.default?t.default:t}async function X(e,t){ge(e);let r=new n.default({...t,parsers:[...p,...t.parsers??[]],preprocessors:[M,...t.preprocessors??[]],hooks:{...t.hooks,parsers:{...R(),...t.hooks?.parsers},preprocessors:{...B(),...t.hooks?.preprocessors}},usesDtcg:t.usesDtcg??!0,platforms:t.platforms??{}});return await r.hasInitialized,r}async function Z(e,t){return t.length===0?{}:(await X(e,{source:t})).tokens}async function Q(e){return(await(0,u.default)(e,{absolute:!0,onlyFiles:!0,unique:!0})).sort()}async function ve(e,t){let n=await Q(t);if(n.length===0)return{};let r=new Map,i=[];for(let e of n){let t=J(e);if(t){let n=r.get(t)??[];n.push(e),r.set(t,n)}else i.push(e)}if(r.size<2)return Z(e,t);let a={};if(i.length>0){let t=await Z(e,i);Y(t)||(a.base=t)}for(let[t,n]of r)a[t]=await Z(e,n);return a}async function $(e){let t=q(e.options);return t.resolvedPath&&(0,r.existsSync)(t.resolvedPath)&&/(?:^|[/\\])(?:style-dictionary|sd)\.config\./i.test((0,s.basename)(t.resolvedPath))?(e.sd=await X(e.options,await _e(t.resolvedPath)),e.sd.tokens):t.source.length===0?{}:e.options.splitThemes?ve(e.options,t.source):Z(e.options,t.source)}async function ye(e){let t=await $(e);if(Y(t)){let{tokensPath:t}=e.options,n=Array.isArray(t)?t.length>0?`tokensPath=[${t.map(e=>`"${e}"`).join(`, `)}]`:`default token paths / CSS fallbacks`:(0,o.isSetString)(t)?`tokensPath="${t}"`:`default token paths / CSS fallbacks`;throw Error(`No design tokens found via ${n}. Provide tokensPath or add a tokens file.`)}return t}Object.defineProperty(exports,"_",{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,"b",{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,"g",{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,"h",{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return J}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return V}}),Object.defineProperty(exports,"m",{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return ye}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return R}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return O}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return $}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return pe}}),Object.defineProperty(exports,"v",{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,"x",{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,"y",{enumerable:!0,get:function(){return m}});
|
|
1
|
+
const e=require("./rolldown-runtime-BocRIvOZ.cjs"),t=require("./utils-BiL8zQzg.cjs");let n=require("style-dictionary");n=e.t(n,1);let r=require("@stryke/fs/exists"),i=require("@stryke/fs/is-file"),a=require("@stryke/path/join"),o=require("@stryke/type-checks/is-set-string"),s=require("node:path"),c=require("@stryke/type-checks/is-function"),l=require("@stryke/fs/resolve"),u=require("fast-glob");u=e.t(u,1);let d=require("json5");d=e.t(d,1);let ee=require("smol-toml"),f=require("yaml");const p=[`razorwind-json`,`razorwind-yaml`,`razorwind-toml`,`razorwind-css`],m=[`json`,`json5`,`jsonc`,`yaml`,`yml`,`toml`,`css`,`js`,`mjs`,`cjs`,`ts`,`mts`,`cts`],h=m.join(`,`),g=[`tokens.json`,`tokens.json5`,`tokens.jsonc`,`tokens.yaml`,`tokens.yml`,`tokens.toml`,`tokens.css`,`design-tokens.json`,`design-tokens.yaml`,`design-tokens.yml`,`tokens`,`design-tokens`,`src/tokens`,`src/design-tokens`,`packages/tokens`,`style-dictionary.config.js`,`style-dictionary.config.mjs`,`style-dictionary.config.ts`,`sd.config.js`,`sd.config.mjs`,`sd.config.ts`],_=`**/*.{${h}}`,v=/^(light|dark|dim|dimmed|high-contrast|hc|protanopia|deuteranopia|tritanopia|achromatopsia|achromatomaly|monochrome|monochromatic|grayscale|greyscale|bw|black-and-white|black-white|blackWhite|default|base|theme)([._-].+)?$/i,y={color:`color`,colours:`color`,colors:`color`,colour:`color`,palette:`color`,bg:`color`,background:`color`,foreground:`color`,fg:`color`,border:`color`,fill:`color`,stroke:`color`,spacing:`dimension`,space:`dimension`,size:`dimension`,sizes:`dimension`,sizing:`dimension`,gap:`dimension`,radius:`dimension`,radii:`dimension`,rounded:`dimension`,width:`dimension`,height:`dimension`,dimension:`dimension`,dimensions:`dimension`,duration:`duration`,durations:`duration`,time:`duration`,delay:`duration`,animation:`duration`,motion:`duration`,transition:`duration`,font:`fontFamily`,fonts:`fontFamily`,fontfamily:`fontFamily`,"font-family":`fontFamily`,typeface:`fontFamily`,fontweight:`fontWeight`,"font-weight":`fontWeight`,weight:`fontWeight`,opacity:`number`,opacities:`number`,zindex:`number`,"z-index":`number`,lineheight:`number`,"line-height":`number`,letterspacing:`dimension`,"letter-spacing":`dimension`,shadow:`shadow`,shadows:`shadow`,elevation:`shadow`,gradient:`gradient`,gradients:`gradient`,typography:`typography`,text:`typography`,cubicbezier:`cubicBezier`,easing:`cubicBezier`,ease:`cubicBezier`},te=/^#(?:[0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i,ne=/^rgba?\(\s*([+\d.]+%?)[\x09-\x0D\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?: |(?: \s*)?,)\s*([+\d.]+%?)[\x09-\x0D\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?: |(?: \s*)?,)\s*([+\d.]+%?)(?:\s*[,/]\s*([+\d.]+%?))?\s*\)$/i,re=/^hsla?\(\s*([+\d.]+)[\x09-\x0D\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?: |(?: \s*)?,)\s*([+\d.]+)%[\x09-\x0D\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*(?: |(?: \s*)?,)\s*([+\d.]+)%(?:\s*[,/]\s*([+\d.]+%?))?\s*\)$/i,ie=/^oklch\(\s*([+\d.]+%?|none)\s+([+\d.]+|none)\s+([+\d.]+|none)(?:\s*\/\s*([+\d.]+%?))?\s*\)$/i,ae=/^([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*(px|rem|em|%|vh|vw|vmin|vmax|ch|ex|cm|mm|in|pt|pc)$/i,oe=/^([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*(ms|s)$/i,se=/^cubic-bezier\(\s*([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*,\s*([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*,\s*([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*,\s*([+-]?(?:\d+(?:\.\d+)?|\.\d+))\s*\)$/i,b=/^var\(\s*(--[\w-]+)\s*(?:,\s*(?:\S.*|[\t\v\f \xA0\u1680\u2000-\u200A\u202F\u205F\u3000\uFEFF]))?\)\s*$/i,x=/^\{[^{}]+\}$/,S={thin:100,hairline:100,extralight:200,"extra-light":200,ultralight:200,light:300,normal:400,regular:400,book:400,medium:500,semibold:600,"semi-bold":600,demibold:600,bold:700,extrabold:800,"extra-bold":800,ultrabold:800,black:900,heavy:900},C=new Set([`px`,`rem`]);function w(e){return Math.min(1,Math.max(0,e))}function T(e,t=100){let n=e.trim();if(n.endsWith(`%`))return w(Number.parseFloat(n)/t);let r=Number.parseFloat(n);return w(r>1?r/255:r)}function ce(e){let t=e.slice(1);return t.length===3||t.length===4?`#${[...t].map(e=>e+e).join(``)}`:(e.length===7||e.length,e)}function le(e){let t=ce(e.toLowerCase()).slice(1),n=Number.parseInt(t.slice(0,2),16)/255,r=Number.parseInt(t.slice(2,4),16)/255,i=Number.parseInt(t.slice(4,6),16)/255,a=t.length===8?Number.parseInt(t.slice(6,8),16)/255:void 0;return{colorSpace:`srgb`,components:[n,r,i],...a===void 0||a===1?{}:{alpha:a},hex:`#${t.slice(0,6)}`}}function ue(e){return`{${e.replace(/^--/,``).split(`-`).filter(Boolean).join(`.`)}}`}function E(e){return`$value`in e||`value`in e||`$ref`in e||`ref`in e}function D(e){for(let t=e.length-1;t>=0;t--){let n=e[t]?.toLowerCase();if(!n)continue;let r=y[n];if(r)return r}}function O(e,n=[]){let r=D(n);if(typeof e==`string`){let t=e.trim();if(x.test(t))return{value:t,type:r};let i=t.match(b);if(i?.[1])return{value:ue(i[1]),type:r};if(te.test(t))return{value:le(t),type:`color`};let a=t.match(ne);if(a){let e=[T(a[1]),T(a[2]),T(a[3])],t=a[4]?a[4].endsWith(`%`)?w(Number.parseFloat(a[4])/100):w(Number.parseFloat(a[4])):void 0;return{value:{colorSpace:`srgb`,components:e,...t===void 0||Number.isNaN(t)?{}:{alpha:t}},type:`color`}}let o=t.match(re);if(o)return{value:{colorSpace:`hsl`,components:[Number.parseFloat(o[1]),Number.parseFloat(o[2]),Number.parseFloat(o[3])],...o[4]?{alpha:o[4].endsWith(`%`)?w(Number.parseFloat(o[4])/100):w(Number.parseFloat(o[4]))}:{}},type:`color`};let s=t.match(ie);if(s){let e=e=>e===`none`?`none`:e.endsWith(`%`)?Number.parseFloat(e)/100:Number.parseFloat(e);return{value:{colorSpace:`oklch`,components:[e(s[1]),e(s[2]),e(s[3])],...s[4]?{alpha:s[4].endsWith(`%`)?w(Number.parseFloat(s[4])/100):w(Number.parseFloat(s[4]))}:{}},type:`color`}}let c=t.match(ae);if(c){let e=c[2].toLowerCase(),n=Number.parseFloat(c[1]);return C.has(e)?{value:{value:n,unit:e},type:`dimension`}:{value:t,type:r===`dimension`?void 0:r}}let l=t.match(oe);if(l)return{value:{value:Number.parseFloat(l[1]),unit:l[2].toLowerCase()},type:`duration`};let u=t.match(se);if(u)return{value:[Number.parseFloat(u[1]),Number.parseFloat(u[2]),Number.parseFloat(u[3]),Number.parseFloat(u[4])],type:`cubicBezier`};let d=S[t.toLowerCase()];return d===void 0?r===`fontFamily`||/family|font|typeface/i.test(n.at(-1)??``)?t.includes(`,`)?{value:t.split(`,`).map(e=>e.trim().replace(/^["']|["']$/g,``)),type:`fontFamily`}:{value:t.replace(/^["']|["']$/g,``),type:`fontFamily`}:r===`color`&&!t.startsWith(`{`)?{value:t,type:void 0}:{value:t,type:r}:{value:d,type:`fontWeight`}}if(typeof e==`number`)return r===`fontWeight`?{value:e,type:`fontWeight`}:r===`duration`?{value:{value:e,unit:`ms`},type:`duration`}:r===`dimension`?{value:{value:e,unit:`px`},type:`dimension`}:{value:e,type:r??`number`};if(Array.isArray(e))return e.length===4&&e.every(e=>typeof e==`number`)&&(r===`cubicBezier`||n.some(e=>/ease|bezier/i.test(e)))?{value:e,type:`cubicBezier`}:e.every(e=>typeof e==`string`)?{value:e,type:r??`fontFamily`}:{value:e,type:r};if(t.n(e)){if(`colorSpace`in e&&`components`in e)return{value:e,type:`color`};if(`value`in e&&`unit`in e){let t=String(e.unit).toLowerCase();return t===`ms`||t===`s`?{value:e,type:`duration`}:C.has(t)?{value:e,type:`dimension`}:{value:e,type:r}}}return{value:e,type:r}}function de(e,t){let n={...e};if(`value`in n&&!(`$value`in n)&&(n.$value=n.value,delete n.value),`type`in n&&!(`$type`in n)&&(n.$type=n.type,delete n.type),`comment`in n&&!(`$description`in n)&&(n.$description=n.comment,delete n.comment),`description`in n&&!(`$description`in n)&&(n.$description=n.description,delete n.description),`ref`in n&&!(`$ref`in n)&&(n.$ref=n.ref,delete n.ref),`$value`in n){let e=O(n.$value,t);n.$value=e.value,!(`$type`in n)&&e.type&&(n.$type=e.type)}return n}function k(e,n=[]){if(Array.isArray(e))return e.map((e,t)=>k(e,[...n,String(t)]));if(!t.n(e))return e;if(E(e))return de(e,n);let r={};for(let[t,i]of Object.entries(e)){if(t.startsWith(`$`)){r[t]=i;continue}r[t]=k(i,[...n,t])}if(!(`$type`in r)){let e=D(n);e&&n.length>0&&(r.$type=e)}return r}function A(e){let n={};for(let[r,i]of Object.entries(e)){let e=r.replace(/^--/,``).split(/[-./]/).filter(Boolean);if(e.length===0)continue;let a=n;for(let n=0;n<e.length-1;n++){let r=e[n],i=a[r];t.n(i)?E(i)&&(a[r]={DEFAULT:i}):a[r]={},a=a[r]}let o=e.at(-1),s=O(i,e),c={$value:s.value,...s.type?{$type:s.type}:{}},l=a[o];t.n(l)&&!E(l)?l.DEFAULT=c:a[o]=c}return k(n)}const fe=/(--[A-Z_][\w-]*)\s*:\s*([^;}{]+?)(?=\s*(?:;|\}|$))/gi;function j(e){let t={},n=e.replace(/\/\*[\s\S]*?\*\//g,``);for(let e of n.matchAll(fe)){let n=e[1],r=e[2]?.trim();!n||!r||(t[n]=r)}return A(t)}const M=`razorwind-infer`;function N(e){if(e==null)return{};if(typeof e!=`object`||Array.isArray(e))throw TypeError(`Token file must parse to a plain object.`);return k(e)}function P(e){try{return N(d.default.parse(e))}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Failed to parse JSON token file: ${t}`)}}function F(e){try{return N((0,f.parse)(e))}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Failed to parse YAML token file: ${t}`)}}function I(e){try{return N((0,ee.parse)(e))}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Failed to parse TOML token file: ${t}`)}}const L=[{name:`razorwind-json`,pattern:/\.json[c5]?$/i,parser:({contents:e})=>P(e)},{name:`razorwind-yaml`,pattern:/\.ya?ml$/i,parser:({contents:e})=>F(e)},{name:`razorwind-toml`,pattern:/\.toml$/i,parser:({contents:e})=>I(e)},{name:`razorwind-css`,pattern:/\.css$/i,parser:({contents:e})=>k(j(e))}];function R(){return Object.fromEntries(L.map(({name:e,pattern:t,parser:n})=>[e,{pattern:t,parser:n}]))}function z(e){return k(e)}function B(){return{[M]:z}}function V(e=[],t=n.default){for(let e of L)t.registerParser(e);t.registerPreprocessor({name:M,preprocessor:z});let r=0,i=0;for(let n of e){for(let e of n.parsers??[])t.registerParser({name:e.name??`${n.name}-parser-${r}`,pattern:e.pattern,parser:({contents:t})=>e.parser(t)}),r++;for(let e of n.preprocessors??[])t.registerPreprocessor((0,c.isFunction)(e)?{name:`${n.name}-preprocessor-${i}`,preprocessor:e}:{name:e.name??`${n.name}-preprocessor-${i}`,preprocessor:e.preprocessor}),i++}}const pe=V;function H(e,t){return(0,s.isAbsolute)(t)?t:(0,s.resolve)(e,t)}function U(e){return/\.([^.]+)$/.exec(e)?.[1]?.toLowerCase()??``}function W(e){return m.includes(U(e))}function G(e){let t=e.split(/[/\\]/).pop()?.toLowerCase()??``;return t.startsWith(`style-dictionary.config.`)||t.startsWith(`sd.config.`)}function K(e){return(0,a.joinPaths)(e,_)}function me(e){return Array.isArray(e)?e.filter(o.isSetString):(0,o.isSetString)(e)?[e]:[]}function he(e,t){let n=H(e,t);if(!(0,r.existsSync)(n))throw Error(`tokensPath "${t}" does not exist (resolved: ${n}).`);return(0,i.isDirectory)(n)?{resolvedPath:n,source:[K(n)],isStyleDictionaryConfig:!1}:G(n)?{resolvedPath:n,source:[],isStyleDictionaryConfig:!0}:{resolvedPath:n,source:[n],isStyleDictionaryConfig:!1}}function q(e){let{cwd:t,tokensPath:n,fallbackPaths:a=[]}=e,o=me(n);if(o.length>0){let e=o.map(e=>he(t,e)),n=e.filter(e=>e.isStyleDictionaryConfig);if(n.length>0){if(e.length>1)throw Error(`tokensPath cannot mix Style Dictionary config files with other token sources.`);return{resolvedPath:n[0].resolvedPath,source:[],origin:`tokensPath`}}return{resolvedPath:e[0]?.resolvedPath,source:e.flatMap(e=>e.source),origin:`tokensPath`}}for(let e of g){let n=H(t,e);if((0,r.existsSync)(n)){if((0,i.isDirectory)(n))return{resolvedPath:n,source:[K(n)],origin:`default`};if(G(n))return{resolvedPath:n,source:[],origin:`default`};if(W(n))return{resolvedPath:n,source:[n],origin:`default`}}}for(let e of a){if(!e)continue;let n=H(t,e);if(!(!(0,r.existsSync)(n)||(0,i.isDirectory)(n))&&(W(n)||U(n)===`css`))return{resolvedPath:n,source:[n],origin:`fallback`}}return{source:[],origin:`none`}}function J(e){return(e.split(/[/\\]/).pop()??``).replace(/\.[^.]+$/,``).match(v)?.[1]?.toLowerCase()}function ge(e){V(e.plugins,n.default)}function Y(e){return!e||typeof e!=`object`||Object.keys(e).length===0}async function _e(e){let t=await(0,l.importModule)(e);return t&&typeof t==`object`&&`default`in t&&t.default?t.default:t}async function X(e,t){ge(e);let r=new n.default({...t,parsers:[...p,...t.parsers??[]],preprocessors:[M,...t.preprocessors??[]],hooks:{...t.hooks,parsers:{...R(),...t.hooks?.parsers},preprocessors:{...B(),...t.hooks?.preprocessors}},usesDtcg:t.usesDtcg??!0,platforms:t.platforms??{}});return await r.hasInitialized,r}async function Z(e,t){return t.length===0?{}:(await X(e,{source:t})).tokens}async function Q(e){return(await(0,u.default)(e,{absolute:!0,onlyFiles:!0,unique:!0})).sort()}async function ve(e,t){let n=await Q(t);if(n.length===0)return{};let r=new Map,i=[];for(let e of n){let t=J(e);if(t){let n=r.get(t)??[];n.push(e),r.set(t,n)}else i.push(e)}if(r.size<2)return Z(e,t);let a={};if(i.length>0){let t=await Z(e,i);Y(t)||(a.base=t)}for(let[t,n]of r)a[t]=await Z(e,n);return a}async function $(e){let t=q(e.options);return t.resolvedPath&&(0,r.existsSync)(t.resolvedPath)&&/(?:^|[/\\])(?:style-dictionary|sd)\.config\./i.test((0,s.basename)(t.resolvedPath))?(e.sd=await X(e.options,await _e(t.resolvedPath)),e.sd.tokens):t.source.length===0?{}:e.options.splitThemes?ve(e.options,t.source):Z(e.options,t.source)}async function ye(e){let t=await $(e);if(Y(t)){let{tokensPath:t}=e.options,n=Array.isArray(t)?t.length>0?`tokensPath=[${t.map(e=>`"${e}"`).join(`, `)}]`:`default token paths / CSS fallbacks`:(0,o.isSetString)(t)?`tokensPath="${t}"`:`default token paths / CSS fallbacks`;throw Error(`No design tokens found via ${n}. Provide tokensPath or add a tokens file.`)}return t}Object.defineProperty(exports,"_",{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,"b",{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,"g",{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,"h",{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return J}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return V}}),Object.defineProperty(exports,"m",{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return ye}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return R}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return O}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return $}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return pe}}),Object.defineProperty(exports,"v",{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,"x",{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,"y",{enumerable:!0,get:function(){return m}});
|
package/dist/utils/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../utils-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../utils-BiL8zQzg.cjs");exports.TOKEN_SET_THEME_PATTERN=e.c,exports.createDocument=e.t,exports.flattenTokens=e.l,exports.formatColorValue=e.d,exports.formatDimensionValue=e.f,exports.formatTokenValue=e.p,exports.isObject=e.n,exports.resolveSchemaIdentity=e.i,exports.resolveTokenSets=e.u,exports.slugifyThemeName=e.a,exports.themeDisplayName=e.o,exports.titleCase=e.s,exports.toCssVar=e.r;
|
package/dist/utils/index.d.cts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { t as Schema } from "../schema-BihaPsfF.cjs";
|
|
2
|
+
import { n as Tokens } from "../index-Bmg0_4Yr.cjs";
|
|
2
3
|
import { GeneratorFunctionResult } from "@power-plant/core";
|
|
3
4
|
//#region src/utils/token-format.d.ts
|
|
4
5
|
/**
|
|
@@ -95,6 +96,37 @@ declare function themeDisplayName(theme: ThemeNamed): string;
|
|
|
95
96
|
*/
|
|
96
97
|
declare function slugifyThemeName(name: string): string;
|
|
97
98
|
//#endregion
|
|
99
|
+
//#region src/utils/schema-identity.d.ts
|
|
100
|
+
/** Design-system identity resolved for generated artifacts. */
|
|
101
|
+
interface SchemaIdentity {
|
|
102
|
+
name?: string;
|
|
103
|
+
title?: string;
|
|
104
|
+
description?: string;
|
|
105
|
+
repository?: string;
|
|
106
|
+
homepage?: string;
|
|
107
|
+
logo?: string;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Plugin / call-site overrides. `displayName` aliases `title`; `icon` aliases
|
|
111
|
+
* `logo` (VS Code / Cursor extension field names).
|
|
112
|
+
*/
|
|
113
|
+
interface SchemaIdentityOverrides {
|
|
114
|
+
name?: string;
|
|
115
|
+
title?: string;
|
|
116
|
+
displayName?: string;
|
|
117
|
+
description?: string;
|
|
118
|
+
repository?: string;
|
|
119
|
+
homepage?: string;
|
|
120
|
+
logo?: string;
|
|
121
|
+
icon?: string;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Resolve design-system identity for generators.
|
|
125
|
+
*
|
|
126
|
+
* Precedence: plugin overrides → {@link Schema} fields → title-cased name.
|
|
127
|
+
*/
|
|
128
|
+
declare function resolveSchemaIdentity(spec: Pick<Schema, "name" | "title" | "description" | "repository" | "homepage" | "logo">, overrides?: SchemaIdentityOverrides): SchemaIdentity;
|
|
129
|
+
//#endregion
|
|
98
130
|
//#region src/utils/index.d.ts
|
|
99
131
|
declare function isObject(value: unknown): value is Record<string, unknown>;
|
|
100
132
|
/**
|
|
@@ -111,5 +143,5 @@ declare function createDocument<TSchema, TOptions extends object>(path: string,
|
|
|
111
143
|
name: string;
|
|
112
144
|
}, language?: string): GeneratorFunctionResult<TSchema, TOptions>[string];
|
|
113
145
|
//#endregion
|
|
114
|
-
export { type BaseFlatToken, type FlattenTokensOptions, TOKEN_SET_THEME_PATTERN, type ThemeNamed, type TokenSet, createDocument, flattenTokens, formatColorValue, formatDimensionValue, formatTokenValue, isObject, resolveTokenSets, slugifyThemeName, themeDisplayName, titleCase, toCssVar };
|
|
146
|
+
export { type BaseFlatToken, type FlattenTokensOptions, type SchemaIdentity, type SchemaIdentityOverrides, TOKEN_SET_THEME_PATTERN, type ThemeNamed, type TokenSet, createDocument, flattenTokens, formatColorValue, formatDimensionValue, formatTokenValue, isObject, resolveSchemaIdentity, resolveTokenSets, slugifyThemeName, themeDisplayName, titleCase, toCssVar };
|
|
115
147
|
//# sourceMappingURL=index.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":[],"sources":["../../src/utils/token-format.ts","../../src/utils/flatten-tokens.ts","../../src/utils/title-case.ts","../../src/utils/theme-display-name.ts","../../src/utils/slugify-theme-name.ts","../../src/utils/index.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../../src/utils/token-format.ts","../../src/utils/flatten-tokens.ts","../../src/utils/title-case.ts","../../src/utils/theme-display-name.ts","../../src/utils/slugify-theme-name.ts","../../src/utils/schema-identity.ts","../../src/utils/index.ts"],"mappings":";;;;;;;;iBA4BgB,iBAAiB;;;;;iBAuDjB,qBAAqB;;;;;iBAwBrB,iBAAiB,gBAAgB;;;;;;UC9EhC;;EAEf;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;UAGe;EACf;EACA,QAAQ;;;;;;;;cASG,yBAAuB;;;;;;;iBAwFpB,iBACd,QAAQ,SAAS,eAAe,UAC/B;UAqBc,qBAAqB,UAAU,gBAAgB;;EAE9D;;EAEA,eAAe,OAAO,kBAAkB;;;;;iBAM1B,cAAc,UAAU,gBAAgB,eACtD,QAAQ,SAAS,eAAe,SAChC,UAAS,qBAAqB,KAC7B;;;;;;;;;;iBCxJa,UAAU;;;;UCNT;EACf;EACA;;;;;;iBAOc,iBAAiB,OAAO;;;;;;;;;iBCNxB,iBAAiB;;;;UCFhB;EACf;EACA;EACA;EACA;EACA;EACA;;;;;;UAOe;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;;;;iBAac,sBACd,MAAM,KACJ,gFAGF,YAAW,0BACV;;;iBC1Ca,SAAS,iBAAiB,SAAS;;;;;;;iBAkCnC,SAAS,cAAc;;;;iBAavB,eAAe,SAAS,yBACtC,cACA,iBACA;EAAQ;GACR,oBACC,wBAAwB,SAAS"}
|
package/dist/utils/index.d.mts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { t as Schema } from "../schema-BihaPsfF.mjs";
|
|
2
|
+
import { n as Tokens } from "../index-DB9GwBAG.mjs";
|
|
2
3
|
import { GeneratorFunctionResult } from "@power-plant/core";
|
|
3
4
|
//#region src/utils/token-format.d.ts
|
|
4
5
|
/**
|
|
@@ -95,6 +96,37 @@ declare function themeDisplayName(theme: ThemeNamed): string;
|
|
|
95
96
|
*/
|
|
96
97
|
declare function slugifyThemeName(name: string): string;
|
|
97
98
|
//#endregion
|
|
99
|
+
//#region src/utils/schema-identity.d.ts
|
|
100
|
+
/** Design-system identity resolved for generated artifacts. */
|
|
101
|
+
interface SchemaIdentity {
|
|
102
|
+
name?: string;
|
|
103
|
+
title?: string;
|
|
104
|
+
description?: string;
|
|
105
|
+
repository?: string;
|
|
106
|
+
homepage?: string;
|
|
107
|
+
logo?: string;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Plugin / call-site overrides. `displayName` aliases `title`; `icon` aliases
|
|
111
|
+
* `logo` (VS Code / Cursor extension field names).
|
|
112
|
+
*/
|
|
113
|
+
interface SchemaIdentityOverrides {
|
|
114
|
+
name?: string;
|
|
115
|
+
title?: string;
|
|
116
|
+
displayName?: string;
|
|
117
|
+
description?: string;
|
|
118
|
+
repository?: string;
|
|
119
|
+
homepage?: string;
|
|
120
|
+
logo?: string;
|
|
121
|
+
icon?: string;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Resolve design-system identity for generators.
|
|
125
|
+
*
|
|
126
|
+
* Precedence: plugin overrides → {@link Schema} fields → title-cased name.
|
|
127
|
+
*/
|
|
128
|
+
declare function resolveSchemaIdentity(spec: Pick<Schema, "name" | "title" | "description" | "repository" | "homepage" | "logo">, overrides?: SchemaIdentityOverrides): SchemaIdentity;
|
|
129
|
+
//#endregion
|
|
98
130
|
//#region src/utils/index.d.ts
|
|
99
131
|
declare function isObject(value: unknown): value is Record<string, unknown>;
|
|
100
132
|
/**
|
|
@@ -111,5 +143,5 @@ declare function createDocument<TSchema, TOptions extends object>(path: string,
|
|
|
111
143
|
name: string;
|
|
112
144
|
}, language?: string): GeneratorFunctionResult<TSchema, TOptions>[string];
|
|
113
145
|
//#endregion
|
|
114
|
-
export { type BaseFlatToken, type FlattenTokensOptions, TOKEN_SET_THEME_PATTERN, type ThemeNamed, type TokenSet, createDocument, flattenTokens, formatColorValue, formatDimensionValue, formatTokenValue, isObject, resolveTokenSets, slugifyThemeName, themeDisplayName, titleCase, toCssVar };
|
|
146
|
+
export { type BaseFlatToken, type FlattenTokensOptions, type SchemaIdentity, type SchemaIdentityOverrides, TOKEN_SET_THEME_PATTERN, type ThemeNamed, type TokenSet, createDocument, flattenTokens, formatColorValue, formatDimensionValue, formatTokenValue, isObject, resolveSchemaIdentity, resolveTokenSets, slugifyThemeName, themeDisplayName, titleCase, toCssVar };
|
|
115
147
|
//# sourceMappingURL=index.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":[],"sources":["../../src/utils/token-format.ts","../../src/utils/flatten-tokens.ts","../../src/utils/title-case.ts","../../src/utils/theme-display-name.ts","../../src/utils/slugify-theme-name.ts","../../src/utils/index.ts"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../src/utils/token-format.ts","../../src/utils/flatten-tokens.ts","../../src/utils/title-case.ts","../../src/utils/theme-display-name.ts","../../src/utils/slugify-theme-name.ts","../../src/utils/schema-identity.ts","../../src/utils/index.ts"],"mappings":""}
|
package/dist/utils/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e,c as t,d as n,f as r,i,l as a,n as o,o as s,
|
|
1
|
+
import{a as e,c as t,d as n,f as r,i,l as a,n as o,o as s,p as c,r as l,s as u,t as d,u as f}from"../utils-B5uabOd5.mjs";export{t as TOKEN_SET_THEME_PATTERN,d as createDocument,a as flattenTokens,n as formatColorValue,r as formatDimensionValue,c as formatTokenValue,o as isObject,i as resolveSchemaIdentity,f as resolveTokenSets,e as slugifyThemeName,s as themeDisplayName,u as titleCase,l as toCssVar};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{titleCase as e}from"@stryke/string-format/title-case";import{isObject as t}from"@stryke/type-checks/is-object";function n(e){return t(e)}function r(e){if(typeof e==`string`)return e;if(!n(e))return;if(typeof e.hex==`string`){let t=typeof e.alpha==`number`&&e.alpha<1?Math.round(e.alpha*255).toString(16).padStart(2,`0`):``;return`${e.hex}${t}`}let t=typeof e.colorSpace==`string`?e.colorSpace:void 0,r=Array.isArray(e.components)?e.components:void 0;if(!t||!r)return;let i=typeof e.alpha==`number`&&e.alpha<1?` / ${e.alpha}`:``;if(t===`srgb`&&r.length>=3){let[e,t,n]=r;if(typeof e==`number`&&typeof t==`number`&&typeof n==`number`)return`rgb(${Math.round(e*255)} ${Math.round(t*255)} ${Math.round(n*255)}${i})`}return`${t}(${r.map(e=>String(e)).join(` `)}${i})`}function i(e){if(typeof e==`number`)return String(e);if(typeof e==`string`)return e;if(n(e)&&typeof e.value==`number`&&typeof e.unit==`string`)return`${e.value}${e.unit}`}function a(e,t){if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`boolean`)return String(e);if(t===`color`||!t&&n(e)&&`colorSpace`in e){let t=r(e);if(t)return t}if(t===`dimension`||t===`duration`||n(e)&&`value`in e&&`unit`in e){let t=i(e);if(t)return t}if(t===`cubicBezier`&&Array.isArray(e))return`cubic-bezier(${e.join(`, `)})`;if(Array.isArray(e))return e.map(String).join(`, `);if(n(e)){let t=r(e);if(t)return t;let n=i(e);if(n)return n}try{return JSON.stringify(e)}catch{return String(e)}}function o(e){return t(e)}const s=/^(?:light|dark|dim|dimmed|high-contrast|hc|protanopia|deuteranopia|tritanopia|achromatopsia|achromatomaly|monochrome|monochromatic|grayscale|greyscale|bw|black-and-white|black-white|blackWhite|default|base|theme)(?:[A-Z]\w*|[._-].+)?$/i;function c(e){return`$value`in e||`value`in e||`$ref`in e||`ref`in e}function l(e){if(typeof e.$description==`string`)return e.$description;if(typeof e.description==`string`)return e.description}function u(e,t){return typeof e.$type==`string`?e.$type:typeof e.type==`string`?e.type:t}function d(e){if(`$value`in e)return e.$value;if(`value`in e)return e.value;if(typeof e.$ref==`string`)return e.$ref;if(typeof e.ref==`string`)return e.ref}function f(e,t,n,r,i,s){if(!o(e))return;let p=u(e,n);if(c(e)){let n=d(e),o={path:t.join(`.`),type:p,value:n,cssValue:a(n,p),description:l(e),theme:r};s.push(i?i(o):o);return}for(let[n,a]of Object.entries(e))n.startsWith(`$`)||f(a,[...t,n],p,r,i,s)}function p(e){if(!o(e))return[];let t=Object.keys(e).filter(e=>!e.startsWith(`$`));if(t.length>0&&t.every(e=>s.test(e))){let n=e;return t.map(e=>({id:e,tokens:n[e]}))}return[{id:`default`,tokens:e}]}function m(e,t={}){let n=t.includeTypes?new Set(t.includeTypes):void 0,r=[];for(let n of p(e)){let e=n.id==="default"?void 0:n.id;f(n.tokens,[],void 0,e,t.enrichToken,r)}return n?r.filter(e=>!e.type||n.has(e.type)):r}function h(t){return e(t)}function g(e){return e.displayName??h(e.name)}function _(e){return e.trim().toLowerCase().replaceAll(/[^a-z0-9]+/g,`-`).replaceAll(/^-+|-+$/g,``)}function v(e){return t(e
|
|
2
|
-
//# sourceMappingURL=utils-
|
|
1
|
+
import{titleCase as e}from"@stryke/string-format/title-case";import{isObject as t}from"@stryke/type-checks/is-object";function n(e){return t(e)}function r(e){if(typeof e==`string`)return e;if(!n(e))return;if(typeof e.hex==`string`){let t=typeof e.alpha==`number`&&e.alpha<1?Math.round(e.alpha*255).toString(16).padStart(2,`0`):``;return`${e.hex}${t}`}let t=typeof e.colorSpace==`string`?e.colorSpace:void 0,r=Array.isArray(e.components)?e.components:void 0;if(!t||!r)return;let i=typeof e.alpha==`number`&&e.alpha<1?` / ${e.alpha}`:``;if(t===`srgb`&&r.length>=3){let[e,t,n]=r;if(typeof e==`number`&&typeof t==`number`&&typeof n==`number`)return`rgb(${Math.round(e*255)} ${Math.round(t*255)} ${Math.round(n*255)}${i})`}return`${t}(${r.map(e=>String(e)).join(` `)}${i})`}function i(e){if(typeof e==`number`)return String(e);if(typeof e==`string`)return e;if(n(e)&&typeof e.value==`number`&&typeof e.unit==`string`)return`${e.value}${e.unit}`}function a(e,t){if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`boolean`)return String(e);if(t===`color`||!t&&n(e)&&`colorSpace`in e){let t=r(e);if(t)return t}if(t===`dimension`||t===`duration`||n(e)&&`value`in e&&`unit`in e){let t=i(e);if(t)return t}if(t===`cubicBezier`&&Array.isArray(e))return`cubic-bezier(${e.join(`, `)})`;if(Array.isArray(e))return e.map(String).join(`, `);if(n(e)){let t=r(e);if(t)return t;let n=i(e);if(n)return n}try{return JSON.stringify(e)}catch{return String(e)}}function o(e){return t(e)}const s=/^(?:light|dark|dim|dimmed|high-contrast|hc|protanopia|deuteranopia|tritanopia|achromatopsia|achromatomaly|monochrome|monochromatic|grayscale|greyscale|bw|black-and-white|black-white|blackWhite|default|base|theme)(?:[A-Z]\w*|[._-].+)?$/i;function c(e){return`$value`in e||`value`in e||`$ref`in e||`ref`in e}function l(e){if(typeof e.$description==`string`)return e.$description;if(typeof e.description==`string`)return e.description}function u(e,t){return typeof e.$type==`string`?e.$type:typeof e.type==`string`?e.type:t}function d(e){if(`$value`in e)return e.$value;if(`value`in e)return e.value;if(typeof e.$ref==`string`)return e.$ref;if(typeof e.ref==`string`)return e.ref}function f(e,t,n,r,i,s){if(!o(e))return;let p=u(e,n);if(c(e)){let n=d(e),o={path:t.join(`.`),type:p,value:n,cssValue:a(n,p),description:l(e),theme:r};s.push(i?i(o):o);return}for(let[n,a]of Object.entries(e))n.startsWith(`$`)||f(a,[...t,n],p,r,i,s)}function p(e){if(!o(e))return[];let t=Object.keys(e).filter(e=>!e.startsWith(`$`));if(t.length>0&&t.every(e=>s.test(e))){let n=e;return t.map(e=>({id:e,tokens:n[e]}))}return[{id:`default`,tokens:e}]}function m(e,t={}){let n=t.includeTypes?new Set(t.includeTypes):void 0,r=[];for(let n of p(e)){let e=n.id==="default"?void 0:n.id;f(n.tokens,[],void 0,e,t.enrichToken,r)}return n?r.filter(e=>!e.type||n.has(e.type)):r}function h(t){return e(t)}function g(e){return e.displayName??h(e.name)}function _(e){return e.trim().toLowerCase().replaceAll(/[^a-z0-9]+/g,`-`).replaceAll(/^-+|-+$/g,``)}function v(e){let t=e.lastIndexOf(`/`);return t>=0?e.slice(t+1):e}function y(e,t={}){let n=t.name??e.name,r=t.displayName??t.title??e.title??(n?h(v(n)):void 0),i=t.description??e.description,a=t.repository??e.repository,o=t.homepage??e.homepage,s=t.icon??t.logo??e.logo;return{...n?{name:n}:{},...r?{title:r}:{},...i?{description:i}:{},...a?{repository:a}:{},...o?{homepage:o}:{},...s?{logo:s}:{}}}function b(e){return t(e)}function x(e,t){return`--${t}-${e.split(`.`).filter(Boolean).join(`-`).replaceAll(/[^\w-]+/g,`-`)}`}function S(e,t,n,r){return{path:e,language:r,chunks:[{content:t,meta:n}]}}export{_ as a,s as c,r as d,i as f,y as i,m as l,b as n,g as o,a as p,x as r,h as s,S as t,p as u};
|
|
2
|
+
//# sourceMappingURL=utils-B5uabOd5.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils-B5uabOd5.mjs","names":[],"sources":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
let e=require("@stryke/string-format/title-case"),t=require("@stryke/type-checks/is-object");function n(e){return(0,t.isObject)(e)}function r(e){if(typeof e==`string`)return e;if(!n(e))return;if(typeof e.hex==`string`){let t=typeof e.alpha==`number`&&e.alpha<1?Math.round(e.alpha*255).toString(16).padStart(2,`0`):``;return`${e.hex}${t}`}let t=typeof e.colorSpace==`string`?e.colorSpace:void 0,r=Array.isArray(e.components)?e.components:void 0;if(!t||!r)return;let i=typeof e.alpha==`number`&&e.alpha<1?` / ${e.alpha}`:``;if(t===`srgb`&&r.length>=3){let[e,t,n]=r;if(typeof e==`number`&&typeof t==`number`&&typeof n==`number`)return`rgb(${Math.round(e*255)} ${Math.round(t*255)} ${Math.round(n*255)}${i})`}return`${t}(${r.map(e=>String(e)).join(` `)}${i})`}function i(e){if(typeof e==`number`)return String(e);if(typeof e==`string`)return e;if(n(e)&&typeof e.value==`number`&&typeof e.unit==`string`)return`${e.value}${e.unit}`}function a(e,t){if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`boolean`)return String(e);if(t===`color`||!t&&n(e)&&`colorSpace`in e){let t=r(e);if(t)return t}if(t===`dimension`||t===`duration`||n(e)&&`value`in e&&`unit`in e){let t=i(e);if(t)return t}if(t===`cubicBezier`&&Array.isArray(e))return`cubic-bezier(${e.join(`, `)})`;if(Array.isArray(e))return e.map(String).join(`, `);if(n(e)){let t=r(e);if(t)return t;let n=i(e);if(n)return n}try{return JSON.stringify(e)}catch{return String(e)}}function o(e){return(0,t.isObject)(e)}const s=/^(?:light|dark|dim|dimmed|high-contrast|hc|protanopia|deuteranopia|tritanopia|achromatopsia|achromatomaly|monochrome|monochromatic|grayscale|greyscale|bw|black-and-white|black-white|blackWhite|default|base|theme)(?:[A-Z]\w*|[._-].+)?$/i;function c(e){return`$value`in e||`value`in e||`$ref`in e||`ref`in e}function l(e){if(typeof e.$description==`string`)return e.$description;if(typeof e.description==`string`)return e.description}function u(e,t){return typeof e.$type==`string`?e.$type:typeof e.type==`string`?e.type:t}function d(e){if(`$value`in e)return e.$value;if(`value`in e)return e.value;if(typeof e.$ref==`string`)return e.$ref;if(typeof e.ref==`string`)return e.ref}function f(e,t,n,r,i,s){if(!o(e))return;let p=u(e,n);if(c(e)){let n=d(e),o={path:t.join(`.`),type:p,value:n,cssValue:a(n,p),description:l(e),theme:r};s.push(i?i(o):o);return}for(let[n,a]of Object.entries(e))n.startsWith(`$`)||f(a,[...t,n],p,r,i,s)}function p(e){if(!o(e))return[];let t=Object.keys(e).filter(e=>!e.startsWith(`$`));if(t.length>0&&t.every(e=>s.test(e))){let n=e;return t.map(e=>({id:e,tokens:n[e]}))}return[{id:`default`,tokens:e}]}function m(e,t={}){let n=t.includeTypes?new Set(t.includeTypes):void 0,r=[];for(let n of p(e)){let e=n.id==="default"?void 0:n.id;f(n.tokens,[],void 0,e,t.enrichToken,r)}return n?r.filter(e=>!e.type||n.has(e.type)):r}function h(t){return(0,e.titleCase)(t)}function g(e){return e.displayName??h(e.name)}function _(e){return e.trim().toLowerCase().replaceAll(/[^a-z0-9]+/g,`-`).replaceAll(/^-+|-+$/g,``)}function v(e){return(0,t.isObject)(e)}function
|
|
1
|
+
let e=require("@stryke/string-format/title-case"),t=require("@stryke/type-checks/is-object");function n(e){return(0,t.isObject)(e)}function r(e){if(typeof e==`string`)return e;if(!n(e))return;if(typeof e.hex==`string`){let t=typeof e.alpha==`number`&&e.alpha<1?Math.round(e.alpha*255).toString(16).padStart(2,`0`):``;return`${e.hex}${t}`}let t=typeof e.colorSpace==`string`?e.colorSpace:void 0,r=Array.isArray(e.components)?e.components:void 0;if(!t||!r)return;let i=typeof e.alpha==`number`&&e.alpha<1?` / ${e.alpha}`:``;if(t===`srgb`&&r.length>=3){let[e,t,n]=r;if(typeof e==`number`&&typeof t==`number`&&typeof n==`number`)return`rgb(${Math.round(e*255)} ${Math.round(t*255)} ${Math.round(n*255)}${i})`}return`${t}(${r.map(e=>String(e)).join(` `)}${i})`}function i(e){if(typeof e==`number`)return String(e);if(typeof e==`string`)return e;if(n(e)&&typeof e.value==`number`&&typeof e.unit==`string`)return`${e.value}${e.unit}`}function a(e,t){if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`boolean`)return String(e);if(t===`color`||!t&&n(e)&&`colorSpace`in e){let t=r(e);if(t)return t}if(t===`dimension`||t===`duration`||n(e)&&`value`in e&&`unit`in e){let t=i(e);if(t)return t}if(t===`cubicBezier`&&Array.isArray(e))return`cubic-bezier(${e.join(`, `)})`;if(Array.isArray(e))return e.map(String).join(`, `);if(n(e)){let t=r(e);if(t)return t;let n=i(e);if(n)return n}try{return JSON.stringify(e)}catch{return String(e)}}function o(e){return(0,t.isObject)(e)}const s=/^(?:light|dark|dim|dimmed|high-contrast|hc|protanopia|deuteranopia|tritanopia|achromatopsia|achromatomaly|monochrome|monochromatic|grayscale|greyscale|bw|black-and-white|black-white|blackWhite|default|base|theme)(?:[A-Z]\w*|[._-].+)?$/i;function c(e){return`$value`in e||`value`in e||`$ref`in e||`ref`in e}function l(e){if(typeof e.$description==`string`)return e.$description;if(typeof e.description==`string`)return e.description}function u(e,t){return typeof e.$type==`string`?e.$type:typeof e.type==`string`?e.type:t}function d(e){if(`$value`in e)return e.$value;if(`value`in e)return e.value;if(typeof e.$ref==`string`)return e.$ref;if(typeof e.ref==`string`)return e.ref}function f(e,t,n,r,i,s){if(!o(e))return;let p=u(e,n);if(c(e)){let n=d(e),o={path:t.join(`.`),type:p,value:n,cssValue:a(n,p),description:l(e),theme:r};s.push(i?i(o):o);return}for(let[n,a]of Object.entries(e))n.startsWith(`$`)||f(a,[...t,n],p,r,i,s)}function p(e){if(!o(e))return[];let t=Object.keys(e).filter(e=>!e.startsWith(`$`));if(t.length>0&&t.every(e=>s.test(e))){let n=e;return t.map(e=>({id:e,tokens:n[e]}))}return[{id:`default`,tokens:e}]}function m(e,t={}){let n=t.includeTypes?new Set(t.includeTypes):void 0,r=[];for(let n of p(e)){let e=n.id==="default"?void 0:n.id;f(n.tokens,[],void 0,e,t.enrichToken,r)}return n?r.filter(e=>!e.type||n.has(e.type)):r}function h(t){return(0,e.titleCase)(t)}function g(e){return e.displayName??h(e.name)}function _(e){return e.trim().toLowerCase().replaceAll(/[^a-z0-9]+/g,`-`).replaceAll(/^-+|-+$/g,``)}function v(e){let t=e.lastIndexOf(`/`);return t>=0?e.slice(t+1):e}function y(e,t={}){let n=t.name??e.name,r=t.displayName??t.title??e.title??(n?h(v(n)):void 0),i=t.description??e.description,a=t.repository??e.repository,o=t.homepage??e.homepage,s=t.icon??t.logo??e.logo;return{...n?{name:n}:{},...r?{title:r}:{},...i?{description:i}:{},...a?{repository:a}:{},...o?{homepage:o}:{},...s?{logo:s}:{}}}function b(e){return(0,t.isObject)(e)}function x(e,t){return`--${t}-${e.split(`.`).filter(Boolean).join(`-`).replaceAll(/[^\w-]+/g,`-`)}`}function S(e,t,n,r){return{path:e,language:r,chunks:[{content:t,meta:n}]}}Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return p}});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@razorwind/core",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.34",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "💨 Razorwind is a unified set of tools that make creating design systems a breeze.",
|
|
6
6
|
"keywords": ["razorwind", "storm-software"],
|
|
@@ -145,5 +145,5 @@
|
|
|
145
145
|
"typescript": "^6.0.3"
|
|
146
146
|
},
|
|
147
147
|
"publishConfig": { "access": "public" },
|
|
148
|
-
"gitHead": "
|
|
148
|
+
"gitHead": "2e9d53ceff13e46fdd225eff5f9ac32bc661814a"
|
|
149
149
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config-14WZlCKO.d.mts","names":[],"sources":["../src/types/plugin.ts","../src/types/config.ts"],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-CVvkZn3F.d.mts","names":[],"sources":["../src/plugin.ts"],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schema-D_QQto0V.d.mts","names":[],"sources":["../src/schema/components.ts","../src/schema/icons.ts","../src/schema/schema.ts"],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schema-jfwKMfbW.mjs","names":[],"sources":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tokens-DQh8MSxD.mjs","names":[],"sources":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils-Dyd9gGJ-.mjs","names":[],"sources":[],"mappings":""}
|