jade-garden
Version:
Class utilities to compose class names and variants
2 lines (1 loc) • 2.08 kB
JavaScript
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const A=require("./utils-DnPJoicf.cjs"),v=(t=A.clsx$1)=>a=>n=>{const c={};if(typeof a?.slots!="object"||Object.keys(a.slots).length===0||typeof a.slots=="object"&&Array.isArray(a.slots))return c;const l=a.slots,b=a?.compoundSlots??[],m=r=>{if(!Array.isArray(b))return{};const s={};for(const{slots:u=[],class:y,className:i,...f}of b)if(A.hasProps(f,r)){for(const e of u)if(typeof e=="string"){const o=[];typeof y=="string"&&o.push(y),Array.isArray(y)&&o.push(...y),typeof i=="string"&&o.push(i),Array.isArray(i)&&o.push(...i),Object.hasOwn(s,e)||(s[e]="");const p=t(...o);s[e]+=s[e].length===0?p:` ${p}`}}return s};if(typeof a?.variants!="object"||typeof a.variants=="object"&&Array.isArray(a.variants)){for(const r of Object.keys(l))c[r]=(s={})=>t(l[r],m({...n,...s})[r],s?.class,s?.className);return c}const O=a.variants,d=Array.isArray(a.compoundVariants)?a.compoundVariants:[],V=typeof a?.defaultVariants=="object"&&!Array.isArray(a.defaultVariants)?a.defaultVariants:{},h={...V,...n??{}},S=r=>{if(!Array.isArray(d))return{};const s={};for(const{class:u,className:y,...i}of d)if(A.hasProps(i,r)){const f={};Object.assign(f,typeof u=="object"?u:{}),Object.assign(f,typeof y=="object"?y:{});for(const e of Object.keys(f)){const o=f[e];if(Object.hasOwn(s,e)||(s[e]=""),typeof o=="string"){const p=t(o);s[e]+=s[e].length===0?p:` ${p}`}}}return s};for(const r of Object.keys(l))c[r]=(s={})=>{const u={...h,...s};return t(l[r],A.getVariantClasses({defaultVariants:V,mergeClass:t,props:n,variants:O,slotKey:r,slotProps:s}),S(u)[r],m(u)[r],s?.class,s?.className)};return c},C=()=>t=>t,N=v(),k=t=>j=>{const n={};if(typeof t?.slots!="object"||Object.keys(t.slots).length===0||typeof t.slots=="object"&&Array.isArray(t.slots))return n;const c=t.slots;t.variants;for(const l of Object.keys(c))n[l]=(b={})=>A.getRawClasses({compoundVariants:t.compoundVariants,name:t.name,props:j,variants:t.variants,slotKey:l,slotProps:b});return n};exports.createSVA=v;exports.defineSVA=C;exports.rawSVA=k;exports.sva=N;