UNPKG

@klass/core

Version:

Class variant utility

2 lines (1 loc) 576 B
"use strict";const b=require("./index.cjs");require("clsx");const k=(e,f={})=>{const{it:o}=f,u=Object.keys(e.base),n={};for(const a of u)n[a]=b.klass({base:e.base[a],variants:Object.entries(e.variants).reduce((s,[t,l])=>(s[t]=Object.entries(l).reduce((r,[i,d])=>(r[i]=d[a],r),{}),s),{}),defaultVariants:e.defaultVariants,compoundVariants:e.compoundVariants?.map(({class:s,...t})=>({...t,class:s?.[a]})).filter(s=>typeof s.class<"u")},{it:o});const c=(a={})=>{const s={};for(const t of u)s[t]=(l={},r)=>n[t]({...a,...l},r);return s};return c.o=e,c.klass=n,c};module.exports=k;