tailwind-variants 1.0.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -44,8 +44,22 @@ For full documentation, visit [tailwind-variants.org](https://tailwind-variants.
44
44
  yarn add tailwind-variants
45
45
  # or
46
46
  npm i tailwind-variants
47
+ # or
48
+ pnpm add tailwind-variants
49
+ ```
50
+
51
+ **Optional:** If you want automatic conflict resolution, also install `tailwind-merge`:
52
+
53
+ ```bash
54
+ yarn add tailwind-merge
55
+ # or
56
+ npm i tailwind-merge
57
+ # or
58
+ pnpm add tailwind-merge
47
59
  ```
48
60
 
61
+ > **⚠️ Upgrading from v1?** Please read the [migration guide](./MIGRATION-V2.md) for breaking changes and performance improvements.
62
+
49
63
  2. Usage:
50
64
 
51
65
  ```js
@@ -0,0 +1 @@
1
+ 'use strict';var u=e=>e===false?"false":e===true?"true":e===0?"0":e,a=e=>{if(!e||typeof e!="object")return true;for(let r in e)return false;return true},y=(e,r)=>{if(e===r)return true;if(!e||!r)return false;let n=Object.keys(e),t=Object.keys(r);if(n.length!==t.length)return false;for(let s=0;s<n.length;s++){let f=n[s];if(!t.includes(f)||e[f]!==r[f])return false}return true},p=e=>e===true||e===false;function o(e,r){for(let n=0;n<e.length;n++){let t=e[n];Array.isArray(t)?o(t,r):r.push(t);}}function g(e){let r=[];return o(e,r),r}var i=(...e)=>{let r=[];o(e,r);let n=[];for(let t=0;t<r.length;t++)r[t]&&n.push(r[t]);return n},c=(e,r)=>{let n={};for(let t in e){let s=e[t];if(t in r){let f=r[t];Array.isArray(s)||Array.isArray(f)?n[t]=i(f,s):typeof s=="object"&&typeof f=="object"&&s&&f?n[t]=c(s,f):n[t]=f+" "+s;}else n[t]=s;}for(let t in r)t in e||(n[t]=r[t]);return n},l=/\s+/g,x=e=>!e||typeof e!="string"?e:e.replace(l," ").trim();exports.a=u;exports.b=a;exports.c=y;exports.d=p;exports.e=g;exports.f=i;exports.g=c;exports.h=x;
@@ -0,0 +1 @@
1
+ var u=e=>e===false?"false":e===true?"true":e===0?"0":e,a=e=>{if(!e||typeof e!="object")return true;for(let r in e)return false;return true},y=(e,r)=>{if(e===r)return true;if(!e||!r)return false;let n=Object.keys(e),t=Object.keys(r);if(n.length!==t.length)return false;for(let s=0;s<n.length;s++){let f=n[s];if(!t.includes(f)||e[f]!==r[f])return false}return true},p=e=>e===true||e===false;function o(e,r){for(let n=0;n<e.length;n++){let t=e[n];Array.isArray(t)?o(t,r):r.push(t);}}function g(e){let r=[];return o(e,r),r}var i=(...e)=>{let r=[];o(e,r);let n=[];for(let t=0;t<r.length;t++)r[t]&&n.push(r[t]);return n},c=(e,r)=>{let n={};for(let t in e){let s=e[t];if(t in r){let f=r[t];Array.isArray(s)||Array.isArray(f)?n[t]=i(f,s):typeof s=="object"&&typeof f=="object"&&s&&f?n[t]=c(s,f):n[t]=f+" "+s;}else n[t]=s;}for(let t in r)t in e||(n[t]=r[t]);return n},l=/\s+/g,x=e=>!e||typeof e!="string"?e:e.replace(l," ").trim();export{u as a,a as b,y as c,p as d,g as e,i as f,c as g,x as h};
@@ -0,0 +1 @@
1
+ import {b}from'./chunk-LK3VBVBE.js';import {twMerge,extendTailwindMerge}from'tailwind-merge';var p=s=>b(s)?twMerge:extendTailwindMerge({...s,extend:{theme:s.theme,classGroups:s.classGroups,conflictingClassGroupModifiers:s.conflictingClassGroupModifiers,conflictingClassGroups:s.conflictingClassGroups,...s.extend}});export{p as a};
@@ -0,0 +1 @@
1
+ 'use strict';var chunk7H22QZCA_cjs=require('./chunk-7H22QZCA.cjs'),tailwindMerge=require('tailwind-merge');var p=s=>chunk7H22QZCA_cjs.b(s)?tailwindMerge.twMerge:tailwindMerge.extendTailwindMerge({...s,extend:{theme:s.theme,classGroups:s.classGroups,conflictingClassGroupModifiers:s.conflictingClassGroupModifiers,conflictingClassGroups:s.conflictingClassGroups,...s.extend}});exports.a=p;
package/dist/cn.cjs ADDED
@@ -0,0 +1 @@
1
+ 'use strict';var chunkSEUVYOWD_cjs=require('./chunk-SEUVYOWD.cjs');require('./chunk-7H22QZCA.cjs');Object.defineProperty(exports,"createTwMerge",{enumerable:true,get:function(){return chunkSEUVYOWD_cjs.a}});
package/dist/cn.js ADDED
@@ -0,0 +1 @@
1
+ export{a as createTwMerge}from'./chunk-RFCF2RNL.js';import'./chunk-LK3VBVBE.js';
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- 'use strict';var tailwindMerge=require('tailwind-merge');var q=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,g=e=>!e||typeof e!="object"||Object.keys(e).length===0,X=(e,l)=>JSON.stringify(e)===JSON.stringify(l);function Y(e,l){e.forEach(function(t){Array.isArray(t)?Y(t,l):l.push(t);});}function F(e){let l=[];return Y(e,l),l}var J=(...e)=>F(e).filter(Boolean),T=(e,l)=>{let t={},O=Object.keys(e),k=Object.keys(l);for(let y of O)if(k.includes(y)){let V=e[y],h=l[y];Array.isArray(V)||Array.isArray(h)?t[y]=J(h,V):typeof V=="object"&&typeof h=="object"?t[y]=T(V,h):t[y]=h+" "+V;}else t[y]=e[y];for(let y of k)O.includes(y)||(t[y]=l[y]);return t},R=e=>!e||typeof e!="string"?e:e.replace(/\s+/g," ").trim();var ce={twMerge:!0,twMergeConfig:{},responsiveVariants:!1},_=e=>e||void 0,E=(...e)=>_(F(e).filter(Boolean).join(" ")),U=null,C={},W=!1,S=(...e)=>l=>l.twMerge?((!U||W)&&(W=!1,U=g(C)?tailwindMerge.twMerge:tailwindMerge.extendTailwindMerge({...C,extend:{theme:C.theme,classGroups:C.classGroups,conflictingClassGroupModifiers:C.conflictingClassGroupModifiers,conflictingClassGroups:C.conflictingClassGroups,...C.extend}})),_(U(E(e)))):E(e),Z=(e,l)=>{for(let t in l)e.hasOwnProperty(t)?e[t]=E(e[t],l[t]):e[t]=l[t];return e},oe=(e,l)=>{let{extend:t=null,slots:O={},variants:k={},compoundVariants:y=[],compoundSlots:V=[],defaultVariants:h={}}=e,d={...ce,...l},B=t!=null&&t.base?E(t.base,e==null?void 0:e.base):e==null?void 0:e.base,b=t!=null&&t.variants&&!g(t.variants)?T(k,t.variants):k,N=t!=null&&t.defaultVariants&&!g(t.defaultVariants)?{...t.defaultVariants,...h}:h;!g(d.twMergeConfig)&&!X(d.twMergeConfig,C)&&(W=!0,C=d.twMergeConfig);let $=g(t==null?void 0:t.slots),x=g(O)?{}:{base:E(e==null?void 0:e.base,$&&(t==null?void 0:t.base)),...O},M=$?x:Z({...t==null?void 0:t.slots},g(x)?{base:e==null?void 0:e.base}:x),j=g(t==null?void 0:t.compoundVariants)?y:J(t==null?void 0:t.compoundVariants,y),v=f=>{if(g(b)&&g(O)&&$)return S(B,f==null?void 0:f.class,f==null?void 0:f.className)(d);if(j&&!Array.isArray(j))throw new TypeError(`The "compoundVariants" prop must be an array. Received: ${typeof j}`);if(V&&!Array.isArray(V))throw new TypeError(`The "compoundSlots" prop must be an array. Received: ${typeof V}`);let P=(r,a,n=[],i)=>{let s=n;if(typeof a=="string")s=s.concat(R(a).split(" ").map(o=>`${r}:${o}`));else if(Array.isArray(a))s=s.concat(a.reduce((o,c)=>o.concat(`${r}:${c}`),[]));else if(typeof a=="object"&&typeof i=="string"){for(let o in a)if(a.hasOwnProperty(o)&&o===i){let c=a[o];if(c&&typeof c=="string"){let m=R(c);s[i]?s[i]=s[i].concat(m.split(" ").map(u=>`${r}:${u}`)):s[i]=m.split(" ").map(u=>`${r}:${u}`);}else Array.isArray(c)&&c.length>0&&(s[i]=c.reduce((m,u)=>m.concat(`${r}:${u}`),[]));}}return s},z=(r,a=b,n=null,i=null)=>{var L;let s=a[r];if(!s||g(s))return null;let o=(L=i==null?void 0:i[r])!=null?L:f==null?void 0:f[r];if(o===null)return null;let c=q(o),m=Array.isArray(d.responsiveVariants)&&d.responsiveVariants.length>0||d.responsiveVariants===!0,u=N==null?void 0:N[r],A=[];if(typeof c=="object"&&m)for(let[G,Q]of Object.entries(c)){let ae=s[Q];if(G==="initial"){u=Q;continue}Array.isArray(d.responsiveVariants)&&!d.responsiveVariants.includes(G)||(A=P(G,ae,A,n));}let p=c!=null&&typeof c!="object"?c:q(u),w=s[p||"false"];return typeof A=="object"&&typeof n=="string"&&A[n]?Z(A,w):A.length>0?(A.push(w),n==="base"?A.join(" "):A):w},ee=()=>b?Object.keys(b).map(r=>z(r,b)):null,te=(r,a)=>{if(!b||typeof b!="object")return null;let n=new Array;for(let i in b){let s=z(i,b,r,a),o=r==="base"&&typeof s=="string"?s:s&&s[r];o&&(n[n.length]=o);}return n},D={};for(let r in f)f[r]!==void 0&&(D[r]=f[r]);let H=(r,a)=>{var i;let n=typeof(f==null?void 0:f[r])=="object"?{[r]:(i=f[r])==null?void 0:i.initial}:{};return {...N,...D,...n,...a}},I=(r=[],a)=>{let n=[];for(let{class:i,className:s,...o}of r){let c=!0;for(let[m,u]of Object.entries(o)){let A=H(m,a)[m];if(Array.isArray(u)){if(!u.includes(A)){c=!1;break}}else {let p=w=>w==null||w===!1;if(p(u)&&p(A))continue;if(A!==u){c=!1;break}}}c&&(i&&n.push(i),s&&n.push(s));}return n},ne=r=>{let a=I(j,r);if(!Array.isArray(a))return a;let n={};for(let i of a)if(typeof i=="string"&&(n.base=S(n.base,i)(d)),typeof i=="object")for(let[s,o]of Object.entries(i))n[s]=S(n[s],o)(d);return n},re=r=>{if(V.length<1)return null;let a={};for(let{slots:n=[],class:i,className:s,...o}of V){if(!g(o)){let c=!0;for(let m of Object.keys(o)){let u=H(m,r)[m];if(u===void 0||(Array.isArray(o[m])?!o[m].includes(u):o[m]!==u)){c=!1;break}}if(!c)continue}for(let c of n)a[c]=a[c]||[],a[c].push([i,s]);}return a};if(!g(O)||!$){let r={};if(typeof M=="object"&&!g(M))for(let a of Object.keys(M))r[a]=n=>{var i,s;return S(M[a],te(a,n),((i=ne(n))!=null?i:[])[a],((s=re(n))!=null?s:[])[a],n==null?void 0:n.class,n==null?void 0:n.className)(d)};return r}return S(B,ee(),I(j),f==null?void 0:f.class,f==null?void 0:f.className)(d)},K=()=>{if(!(!b||typeof b!="object"))return Object.keys(b)};return v.variantKeys=K(),v.extend=t,v.base=B,v.slots=M,v.variants=b,v.defaultVariants=N,v.compoundSlots=V,v.compoundVariants=j,v},ye=e=>(l,t)=>oe(l,t?T(e,t):e);exports.cn=S;exports.cnBase=E;exports.createTV=ye;exports.defaultConfig=ce;exports.tv=oe;exports.voidEmpty=_;
1
+ 'use strict';var chunkSEUVYOWD_cjs=require('./chunk-SEUVYOWD.cjs'),chunk7H22QZCA_cjs=require('./chunk-7H22QZCA.cjs');var st={twMerge:true,twMergeConfig:{},responsiveVariants:false},x=(...l)=>{let u=[];X(l,u);let t="";for(let d=0;d<u.length;d++)u[d]&&(t&&(t+=" "),t+=u[d]);return t||void 0};function X(l,u){for(let t=0;t<l.length;t++){let d=l[t];Array.isArray(d)?X(d,u):d&&u.push(d);}}var P=null,B={},F=false,S=(...l)=>u=>{let t=x(l);return !t||!u.twMerge?t:((!P||F)&&(F=false,P=chunkSEUVYOWD_cjs.a(B)),P(t)||void 0)},Q=(l,u)=>{for(let t in u)t in l?l[t]=x(l[t],u[t]):l[t]=u[t];return l},rt=(l,u)=>{let{extend:t=null,slots:d={},variants:R={},compoundVariants:q=[],compoundSlots:A=[],defaultVariants:L={}}=l,m={...st,...u},M=t?.base?x(t.base,l?.base):l?.base,y=t?.variants&&!chunk7H22QZCA_cjs.b(t.variants)?chunk7H22QZCA_cjs.g(R,t.variants):R,T=t?.defaultVariants&&!chunk7H22QZCA_cjs.b(t.defaultVariants)?{...t.defaultVariants,...L}:L;!chunk7H22QZCA_cjs.b(m.twMergeConfig)&&!chunk7H22QZCA_cjs.c(m.twMergeConfig,B)&&(F=true,B=m.twMergeConfig);let j=chunk7H22QZCA_cjs.b(t?.slots),$=chunk7H22QZCA_cjs.b(d)?{}:{base:x(l?.base,j&&t?.base),...d},N=j?$:Q({...t?.slots},chunk7H22QZCA_cjs.b($)?{base:l?.base}:$),w=chunk7H22QZCA_cjs.b(t?.compoundVariants)?q:chunk7H22QZCA_cjs.f(t?.compoundVariants,q),V=b=>{if(chunk7H22QZCA_cjs.b(y)&&chunk7H22QZCA_cjs.b(d)&&j)return S(M,b?.class,b?.className)(m);if(w&&!Array.isArray(w))throw new TypeError(`The "compoundVariants" prop must be an array. Received: ${typeof w}`);if(A&&!Array.isArray(A))throw new TypeError(`The "compoundSlots" prop must be an array. Received: ${typeof A}`);let Z=(n,e,s=[],o)=>{let a=s;if(typeof e=="string"){let c=chunk7H22QZCA_cjs.h(e).split(" ");for(let f=0;f<c.length;f++)a.push(`${n}:${c[f]}`);}else if(Array.isArray(e))for(let r=0;r<e.length;r++)a.push(`${n}:${e[r]}`);else if(typeof e=="object"&&typeof o=="string"&&o in e){let r=e[o];if(r&&typeof r=="string"){let f=chunk7H22QZCA_cjs.h(r).split(" "),p=[];for(let i=0;i<f.length;i++)p.push(`${n}:${f[i]}`);a[o]=a[o]?a[o].concat(p):p;}else if(Array.isArray(r)&&r.length>0){let c=[];for(let f=0;f<r.length;f++)c.push(`${n}:${r[f]}`);a[o]=c;}}return a},U=(n,e=y,s=null,o=null)=>{let a=e[n];if(!a||chunk7H22QZCA_cjs.b(a))return null;let r=o?.[n]??b?.[n];if(r===null)return null;let c=chunk7H22QZCA_cjs.a(r),f=Array.isArray(m.responsiveVariants)&&m.responsiveVariants.length>0||m.responsiveVariants===true,p=T?.[n],i=[];if(typeof c=="object"&&f)for(let[C,G]of Object.entries(c)){let nt=a[G];if(C==="initial"){p=G;continue}Array.isArray(m.responsiveVariants)&&!m.responsiveVariants.includes(C)||(i=Z(C,nt,i,s));}let v=c!=null&&typeof c!="object"?c:chunk7H22QZCA_cjs.a(p),h=a[v||"false"];return typeof i=="object"&&typeof s=="string"&&i[s]?Q(i,h):i.length>0?(i.push(h),s==="base"?i.join(" "):i):h},_=()=>{if(!y)return null;let n=Object.keys(y),e=[];for(let s=0;s<n.length;s++){let o=U(n[s],y);o&&e.push(o);}return e},K=(n,e)=>{if(!y||typeof y!="object")return null;let s=[];for(let o in y){let a=U(o,y,n,e),r=n==="base"&&typeof a=="string"?a:a&&a[n];r&&s.push(r);}return s},W={};for(let n in b){let e=b[n];e!==void 0&&(W[n]=e);}let z=(n,e)=>{let s=typeof b?.[n]=="object"?{[n]:b[n]?.initial}:{};return {...T,...W,...s,...e}},D=(n=[],e)=>{let s=[],o=n.length;for(let a=0;a<o;a++){let{class:r,className:c,...f}=n[a],p=true,i=z(null,e);for(let v in f){let h=f[v],C=i[v];if(Array.isArray(h)){if(!h.includes(C)){p=false;break}}else {if((h==null||h===false)&&(C==null||C===false))continue;if(C!==h){p=false;break}}}p&&(r&&s.push(r),c&&s.push(c));}return s},tt=n=>{let e=D(w,n);if(!Array.isArray(e))return e;let s={},o=S;for(let a=0;a<e.length;a++){let r=e[a];if(typeof r=="string")s.base=o(s.base,r)(m);else if(typeof r=="object")for(let c in r)s[c]=o(s[c],r[c])(m);}return s},et=n=>{if(A.length<1)return null;let e={},s=z(null,n);for(let o=0;o<A.length;o++){let{slots:a=[],class:r,className:c,...f}=A[o];if(!chunk7H22QZCA_cjs.b(f)){let p=true;for(let i in f){let v=s[i],h=f[i];if(v===void 0||(Array.isArray(h)?!h.includes(v):h!==v)){p=false;break}}if(!p)continue}for(let p=0;p<a.length;p++){let i=a[p];e[i]||(e[i]=[]),e[i].push([r,c]);}}return e};if(!chunk7H22QZCA_cjs.b(d)||!j){let n={};if(typeof N=="object"&&!chunk7H22QZCA_cjs.b(N)){let e=S;for(let s in N)n[s]=o=>{let a=tt(o),r=et(o);return e(N[s],K(s,o),a?a[s]:void 0,r?r[s]:void 0,o?.class,o?.className)(m)};}return n}return S(M,_(),D(w),b?.class,b?.className)(m)},Y=()=>{if(!(!y||typeof y!="object"))return Object.keys(y)};return V.variantKeys=Y(),V.extend=t,V.base=M,V.slots=N,V.variants=y,V.defaultVariants=T,V.compoundSlots=A,V.compoundVariants=w,V},it=l=>(u,t)=>rt(u,t?chunk7H22QZCA_cjs.g(l,t):l);exports.cn=S;exports.cnBase=x;exports.createTV=it;exports.defaultConfig=st;exports.tv=rt;
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import {e,b,g,c,f,a,h}from'./chunk-I2QGXAA3.js';import {twMerge,extendTailwindMerge}from'tailwind-merge';var ie={twMerge:!0,twMergeConfig:{},responsiveVariants:!1},x=s=>s||void 0,N=(...s)=>x(e(s).filter(Boolean).join(" ")),R=null,v={},q=!1,M=(...s)=>b$1=>b$1.twMerge?((!R||q)&&(q=!1,R=b(v)?twMerge:extendTailwindMerge({...v,extend:{theme:v.theme,classGroups:v.classGroups,conflictingClassGroupModifiers:v.conflictingClassGroupModifiers,conflictingClassGroups:v.conflictingClassGroups,...v.extend}})),x(R(N(s)))):N(s),_=(s,b)=>{for(let e in b)s.hasOwnProperty(e)?s[e]=N(s[e],b[e]):s[e]=b[e];return s},ce=(s,b$1)=>{let{extend:e=null,slots:O={},variants:U={},compoundVariants:W=[],compoundSlots:C=[],defaultVariants:z={}}=s,m={...ie,...b$1},k=e!=null&&e.base?N(e.base,s==null?void 0:s.base):s==null?void 0:s.base,g$1=e!=null&&e.variants&&!b(e.variants)?g(U,e.variants):U,w=e!=null&&e.defaultVariants&&!b(e.defaultVariants)?{...e.defaultVariants,...z}:z;!b(m.twMergeConfig)&&!c(m.twMergeConfig,v)&&(q=!0,v=m.twMergeConfig);let S=b(e==null?void 0:e.slots),T=b(O)?{}:{base:N(s==null?void 0:s.base,S&&(e==null?void 0:e.base)),...O},j=S?T:_({...e==null?void 0:e.slots},b(T)?{base:s==null?void 0:s.base}:T),h$1=b(e==null?void 0:e.compoundVariants)?W:f(e==null?void 0:e.compoundVariants,W),V=l=>{if(b(g$1)&&b(O)&&S)return M(k,l==null?void 0:l.class,l==null?void 0:l.className)(m);if(h$1&&!Array.isArray(h$1))throw new TypeError(`The "compoundVariants" prop must be an array. Received: ${typeof h$1}`);if(C&&!Array.isArray(C))throw new TypeError(`The "compoundSlots" prop must be an array. Received: ${typeof C}`);let P=(a,n,t=[],i)=>{let r=t;if(typeof n=="string")r=r.concat(h(n).split(" ").map(o=>`${a}:${o}`));else if(Array.isArray(n))r=r.concat(n.reduce((o,c)=>o.concat(`${a}:${c}`),[]));else if(typeof n=="object"&&typeof i=="string"){for(let o in n)if(n.hasOwnProperty(o)&&o===i){let c=n[o];if(c&&typeof c=="string"){let u=h(c);r[i]?r[i]=r[i].concat(u.split(" ").map(f=>`${a}:${f}`)):r[i]=u.split(" ").map(f=>`${a}:${f}`);}else Array.isArray(c)&&c.length>0&&(r[i]=c.reduce((u,f)=>u.concat(`${a}:${f}`),[]));}}return r},D=(a$1,n=g$1,t=null,i=null)=>{var L;let r=n[a$1];if(!r||b(r))return null;let o=(L=i==null?void 0:i[a$1])!=null?L:l==null?void 0:l[a$1];if(o===null)return null;let c=a(o),u=Array.isArray(m.responsiveVariants)&&m.responsiveVariants.length>0||m.responsiveVariants===!0,f=w==null?void 0:w[a$1],d=[];if(typeof c=="object"&&u)for(let[E,Q]of Object.entries(c)){let ne=r[Q];if(E==="initial"){f=Q;continue}Array.isArray(m.responsiveVariants)&&!m.responsiveVariants.includes(E)||(d=P(E,ne,d,t));}let $=c!=null&&typeof c!="object"?c:a(f),A=r[$||"false"];return typeof d=="object"&&typeof t=="string"&&d[t]?_(d,A):d.length>0?(d.push(A),t==="base"?d.join(" "):d):A},p=()=>g$1?Object.keys(g$1).map(a=>D(a,g$1)):null,ee=(a,n)=>{if(!g$1||typeof g$1!="object")return null;let t=new Array;for(let i in g$1){let r=D(i,g$1,a,n),o=a==="base"&&typeof r=="string"?r:r&&r[a];o&&(t[t.length]=o);}return t},H={};for(let a in l)l[a]!==void 0&&(H[a]=l[a]);let I=(a,n)=>{var i;let t=typeof(l==null?void 0:l[a])=="object"?{[a]:(i=l[a])==null?void 0:i.initial}:{};return {...w,...H,...t,...n}},J=(a=[],n)=>{let t=[];for(let{class:i,className:r,...o}of a){let c=!0;for(let[u,f]of Object.entries(o)){let d=I(u,n)[u];if(Array.isArray(f)){if(!f.includes(d)){c=!1;break}}else {let $=A=>A==null||A===!1;if($(f)&&$(d))continue;if(d!==f){c=!1;break}}}c&&(i&&t.push(i),r&&t.push(r));}return t},te=a=>{let n=J(h$1,a);if(!Array.isArray(n))return n;let t={};for(let i of n)if(typeof i=="string"&&(t.base=M(t.base,i)(m)),typeof i=="object")for(let[r,o]of Object.entries(i))t[r]=M(t[r],o)(m);return t},ae=a=>{if(C.length<1)return null;let n={};for(let{slots:t=[],class:i,className:r,...o}of C){if(!b(o)){let c=!0;for(let u of Object.keys(o)){let f=I(u,a)[u];if(f===void 0||(Array.isArray(o[u])?!o[u].includes(f):o[u]!==f)){c=!1;break}}if(!c)continue}for(let c of t)n[c]=n[c]||[],n[c].push([i,r]);}return n};if(!b(O)||!S){let a={};if(typeof j=="object"&&!b(j))for(let n of Object.keys(j))a[n]=t=>{var i,r;return M(j[n],ee(n,t),((i=te(t))!=null?i:[])[n],((r=ae(t))!=null?r:[])[n],t==null?void 0:t.class,t==null?void 0:t.className)(m)};return a}return M(k,p(),J(h$1),l==null?void 0:l.class,l==null?void 0:l.className)(m)},K=()=>{if(!(!g$1||typeof g$1!="object"))return Object.keys(g$1)};return V.variantKeys=K(),V.extend=e,V.base=k,V.slots=j,V.variants=g$1,V.defaultVariants=w,V.compoundSlots=C,V.compoundVariants=h$1,V},fe=s=>(b,e)=>ce(b,e?g(s,e):s);export{M as cn,N as cnBase,fe as createTV,ie as defaultConfig,ce as tv,x as voidEmpty};
1
+ import {a}from'./chunk-RFCF2RNL.js';import {b,g,c,f,a as a$1,h}from'./chunk-LK3VBVBE.js';var st={twMerge:true,twMergeConfig:{},responsiveVariants:false},x=(...l)=>{let u=[];X(l,u);let t="";for(let d=0;d<u.length;d++)u[d]&&(t&&(t+=" "),t+=u[d]);return t||void 0};function X(l,u){for(let t=0;t<l.length;t++){let d=l[t];Array.isArray(d)?X(d,u):d&&u.push(d);}}var P=null,B={},F=false,S=(...l)=>u=>{let t=x(l);return !t||!u.twMerge?t:((!P||F)&&(F=false,P=a(B)),P(t)||void 0)},Q=(l,u)=>{for(let t in u)t in l?l[t]=x(l[t],u[t]):l[t]=u[t];return l},rt=(l,u)=>{let{extend:t=null,slots:d={},variants:R={},compoundVariants:q=[],compoundSlots:A=[],defaultVariants:L={}}=l,m={...st,...u},M=t?.base?x(t.base,l?.base):l?.base,y=t?.variants&&!b(t.variants)?g(R,t.variants):R,T=t?.defaultVariants&&!b(t.defaultVariants)?{...t.defaultVariants,...L}:L;!b(m.twMergeConfig)&&!c(m.twMergeConfig,B)&&(F=true,B=m.twMergeConfig);let j=b(t?.slots),$=b(d)?{}:{base:x(l?.base,j&&t?.base),...d},N=j?$:Q({...t?.slots},b($)?{base:l?.base}:$),w=b(t?.compoundVariants)?q:f(t?.compoundVariants,q),V=b$1=>{if(b(y)&&b(d)&&j)return S(M,b$1?.class,b$1?.className)(m);if(w&&!Array.isArray(w))throw new TypeError(`The "compoundVariants" prop must be an array. Received: ${typeof w}`);if(A&&!Array.isArray(A))throw new TypeError(`The "compoundSlots" prop must be an array. Received: ${typeof A}`);let Z=(n,e,s=[],o)=>{let a=s;if(typeof e=="string"){let c=h(e).split(" ");for(let f=0;f<c.length;f++)a.push(`${n}:${c[f]}`);}else if(Array.isArray(e))for(let r=0;r<e.length;r++)a.push(`${n}:${e[r]}`);else if(typeof e=="object"&&typeof o=="string"&&o in e){let r=e[o];if(r&&typeof r=="string"){let f=h(r).split(" "),p=[];for(let i=0;i<f.length;i++)p.push(`${n}:${f[i]}`);a[o]=a[o]?a[o].concat(p):p;}else if(Array.isArray(r)&&r.length>0){let c=[];for(let f=0;f<r.length;f++)c.push(`${n}:${r[f]}`);a[o]=c;}}return a},U=(n,e=y,s=null,o=null)=>{let a=e[n];if(!a||b(a))return null;let r=o?.[n]??b$1?.[n];if(r===null)return null;let c=a$1(r),f=Array.isArray(m.responsiveVariants)&&m.responsiveVariants.length>0||m.responsiveVariants===true,p=T?.[n],i=[];if(typeof c=="object"&&f)for(let[C,G]of Object.entries(c)){let nt=a[G];if(C==="initial"){p=G;continue}Array.isArray(m.responsiveVariants)&&!m.responsiveVariants.includes(C)||(i=Z(C,nt,i,s));}let v=c!=null&&typeof c!="object"?c:a$1(p),h=a[v||"false"];return typeof i=="object"&&typeof s=="string"&&i[s]?Q(i,h):i.length>0?(i.push(h),s==="base"?i.join(" "):i):h},_=()=>{if(!y)return null;let n=Object.keys(y),e=[];for(let s=0;s<n.length;s++){let o=U(n[s],y);o&&e.push(o);}return e},K=(n,e)=>{if(!y||typeof y!="object")return null;let s=[];for(let o in y){let a=U(o,y,n,e),r=n==="base"&&typeof a=="string"?a:a&&a[n];r&&s.push(r);}return s},W={};for(let n in b$1){let e=b$1[n];e!==void 0&&(W[n]=e);}let z=(n,e)=>{let s=typeof b$1?.[n]=="object"?{[n]:b$1[n]?.initial}:{};return {...T,...W,...s,...e}},D=(n=[],e)=>{let s=[],o=n.length;for(let a=0;a<o;a++){let{class:r,className:c,...f}=n[a],p=true,i=z(null,e);for(let v in f){let h=f[v],C=i[v];if(Array.isArray(h)){if(!h.includes(C)){p=false;break}}else {if((h==null||h===false)&&(C==null||C===false))continue;if(C!==h){p=false;break}}}p&&(r&&s.push(r),c&&s.push(c));}return s},tt=n=>{let e=D(w,n);if(!Array.isArray(e))return e;let s={},o=S;for(let a=0;a<e.length;a++){let r=e[a];if(typeof r=="string")s.base=o(s.base,r)(m);else if(typeof r=="object")for(let c in r)s[c]=o(s[c],r[c])(m);}return s},et=n=>{if(A.length<1)return null;let e={},s=z(null,n);for(let o=0;o<A.length;o++){let{slots:a=[],class:r,className:c,...f}=A[o];if(!b(f)){let p=true;for(let i in f){let v=s[i],h=f[i];if(v===void 0||(Array.isArray(h)?!h.includes(v):h!==v)){p=false;break}}if(!p)continue}for(let p=0;p<a.length;p++){let i=a[p];e[i]||(e[i]=[]),e[i].push([r,c]);}}return e};if(!b(d)||!j){let n={};if(typeof N=="object"&&!b(N)){let e=S;for(let s in N)n[s]=o=>{let a=tt(o),r=et(o);return e(N[s],K(s,o),a?a[s]:void 0,r?r[s]:void 0,o?.class,o?.className)(m)};}return n}return S(M,_(),D(w),b$1?.class,b$1?.className)(m)},Y=()=>{if(!(!y||typeof y!="object"))return Object.keys(y)};return V.variantKeys=Y(),V.extend=t,V.base=M,V.slots=N,V.variants=y,V.defaultVariants=T,V.compoundSlots=A,V.compoundVariants=w,V},it=l=>(u,t)=>rt(u,t?g(l,t):l);export{S as cn,x as cnBase,it as createTV,st as defaultConfig,rt as tv};
package/dist/utils.cjs CHANGED
@@ -1 +1 @@
1
- 'use strict';var l=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,u=e=>!e||typeof e!="object"||Object.keys(e).length===0,x=(e,o)=>JSON.stringify(e)===JSON.stringify(o),A=e=>typeof e=="boolean";function i(e,o){e.forEach(function(r){Array.isArray(r)?i(r,o):o.push(r);});}function y(e){let o=[];return i(e,o),o}var a=(...e)=>y(e).filter(Boolean),p=(e,o)=>{let r={},c=Object.keys(e),f=Object.keys(o);for(let t of c)if(f.includes(t)){let s=e[t],n=o[t];Array.isArray(s)||Array.isArray(n)?r[t]=a(n,s):typeof s=="object"&&typeof n=="object"?r[t]=p(s,n):r[t]=n+" "+s;}else r[t]=e[t];for(let t of f)c.includes(t)||(r[t]=o[t]);return r},g=e=>!e||typeof e!="string"?e:e.replace(/\s+/g," ").trim();exports.falsyToString=l;exports.flatArray=y;exports.flatMergeArrays=a;exports.isBoolean=A;exports.isEmptyObject=u;exports.isEqual=x;exports.mergeObjects=p;exports.removeExtraSpaces=g;
1
+ 'use strict';var chunk7H22QZCA_cjs=require('./chunk-7H22QZCA.cjs');Object.defineProperty(exports,"falsyToString",{enumerable:true,get:function(){return chunk7H22QZCA_cjs.a}});Object.defineProperty(exports,"flatArray",{enumerable:true,get:function(){return chunk7H22QZCA_cjs.e}});Object.defineProperty(exports,"flatMergeArrays",{enumerable:true,get:function(){return chunk7H22QZCA_cjs.f}});Object.defineProperty(exports,"isBoolean",{enumerable:true,get:function(){return chunk7H22QZCA_cjs.d}});Object.defineProperty(exports,"isEmptyObject",{enumerable:true,get:function(){return chunk7H22QZCA_cjs.b}});Object.defineProperty(exports,"isEqual",{enumerable:true,get:function(){return chunk7H22QZCA_cjs.c}});Object.defineProperty(exports,"mergeObjects",{enumerable:true,get:function(){return chunk7H22QZCA_cjs.g}});Object.defineProperty(exports,"removeExtraSpaces",{enumerable:true,get:function(){return chunk7H22QZCA_cjs.h}});
package/dist/utils.js CHANGED
@@ -1 +1 @@
1
- export{a as falsyToString,e as flatArray,f as flatMergeArrays,d as isBoolean,b as isEmptyObject,c as isEqual,g as mergeObjects,h as removeExtraSpaces}from'./chunk-I2QGXAA3.js';
1
+ export{a as falsyToString,e as flatArray,f as flatMergeArrays,d as isBoolean,b as isEmptyObject,c as isEqual,g as mergeObjects,h as removeExtraSpaces}from'./chunk-LK3VBVBE.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tailwind-variants",
3
- "version": "1.0.0",
3
+ "version": "2.0.1",
4
4
  "description": "🦄 Tailwindcss first-class variant API",
5
5
  "author": "Junior Garcia <jrgarciadev@gmail.com>",
6
6
  "license": "MIT",
@@ -33,10 +33,11 @@
33
33
  "lint": "eslint . src/**/*.{js,ts}",
34
34
  "lint:fix": "eslint --fix . src/**/*.{js,ts}",
35
35
  "test": "jest --verbose",
36
- "test:watch": "jest --watch --no-verbose"
37
- },
38
- "dependencies": {
39
- "tailwind-merge": "3.0.2"
36
+ "test:watch": "jest --watch --no-verbose",
37
+ "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s --commit-path .",
38
+ "release": "bumpp --execute='pnpm run changelog' --all",
39
+ "prepublishOnly": "pnpm run build",
40
+ "release:check": "pnpm run lint && pnpm run typecheck && pnpm run test && pnpm run build"
40
41
  },
41
42
  "devDependencies": {
42
43
  "@commitlint/cli": "19.5.0",
@@ -52,8 +53,11 @@
52
53
  "@typescript-eslint/eslint-plugin": "8.14.0",
53
54
  "@typescript-eslint/parser": "8.14.0",
54
55
  "benchmark": "2.1.4",
56
+ "bumpp": "10.2.0",
57
+ "changelogithub": "13.16.0",
55
58
  "class-variance-authority": "0.7.0",
56
59
  "clean-package": "2.2.0",
60
+ "conventional-changelog-cli": "5.0.0",
57
61
  "eslint": "8.57.0",
58
62
  "eslint-config-prettier": "9.1.0",
59
63
  "eslint-config-ts-lambdas": "1.2.3",
@@ -65,18 +69,24 @@
65
69
  "eslint-plugin-promise": "7.1.0",
66
70
  "expect": "29.7.0",
67
71
  "jest": "29.7.0",
68
- "postcss": "8.5.3",
72
+ "postcss": "8.5.6",
69
73
  "prettier": "3.3.3",
70
74
  "prettier-eslint": "16.3.0",
71
75
  "prettier-eslint-cli": "8.0.1",
72
- "tailwindcss": "4.0.12",
76
+ "tailwindcss": "4.1.11",
73
77
  "ts-node": "10.9.2",
74
- "tsup": "8.3.5",
78
+ "tsup": "8.5.0",
75
79
  "typescript": "5.6.3"
76
80
  },
77
81
  "peerDependencies": {
82
+ "tailwind-merge": ">=3.0.0",
78
83
  "tailwindcss": "*"
79
84
  },
85
+ "peerDependenciesMeta": {
86
+ "tailwind-merge": {
87
+ "optional": true
88
+ }
89
+ },
80
90
  "keywords": [
81
91
  "tailwindcss",
82
92
  "classes",
@@ -92,9 +102,9 @@
92
102
  "module": "dist/index.js",
93
103
  "exports": {
94
104
  ".": {
95
- "require": "./dist/index.cjs",
105
+ "types": "./dist/index.d.ts",
96
106
  "import": "./dist/index.js",
97
- "types": "./dist/index.d.ts"
107
+ "require": "./dist/index.cjs"
98
108
  },
99
109
  "./dist/*": "./dist/*",
100
110
  "./package.json": "./package.json"
@@ -1 +0,0 @@
1
- var l=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,u=e=>!e||typeof e!="object"||Object.keys(e).length===0,x=(e,o)=>JSON.stringify(e)===JSON.stringify(o),A=e=>typeof e=="boolean";function i(e,o){e.forEach(function(r){Array.isArray(r)?i(r,o):o.push(r);});}function y(e){let o=[];return i(e,o),o}var a=(...e)=>y(e).filter(Boolean),p=(e,o)=>{let r={},c=Object.keys(e),f=Object.keys(o);for(let t of c)if(f.includes(t)){let s=e[t],n=o[t];Array.isArray(s)||Array.isArray(n)?r[t]=a(n,s):typeof s=="object"&&typeof n=="object"?r[t]=p(s,n):r[t]=n+" "+s;}else r[t]=e[t];for(let t of f)c.includes(t)||(r[t]=o[t]);return r},g=e=>!e||typeof e!="string"?e:e.replace(/\s+/g," ").trim();export{l as a,u as b,x as c,A as d,y as e,a as f,p as g,g as h};