tailwind-variants 0.0.17-dev.1 → 0.0.17
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/index.cjs +2 -3
- package/dist/index.d.ts +13 -7
- package/dist/index.js +2 -3
- package/package.json +4 -2
package/dist/index.cjs
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var C = require('fs');
|
|
4
3
|
var tailwindMerge = require('tailwind-merge');
|
|
5
4
|
|
|
6
|
-
var
|
|
5
|
+
var O=(...t)=>t.flat(1/0).filter(Boolean).join(" "),M=t=>typeof t=="boolean"?`${t}`:t===0?"0":t,m=t=>t&&Object.keys(t).length>0,j=(...t)=>(l={})=>l.twMerge?(m(l.twMergeConfig)?tailwindMerge.extendTailwindMerge(l.twMergeConfig):tailwindMerge.twMerge)(O(t)):O(t),S=(t,l)=>{let b={};return typeof t!="object"||typeof l!="object"||Object.keys(t).forEach(c=>{l[c]?b[c]=O([t[c],l[c]]):b[c]=t[c];}),b},w=t=>!t||typeof t!="string"?t:t.replace(/\s+/g," ").trim();var G=(t,l={twMerge:!0,twMergeConfig:{}})=>{let{slots:b={},variants:c={},compoundVariants:g=[],defaultVariants:o={}}=t,$=i=>{var A;if(c==null&&!m(b))return j(t==null?void 0:t.base,i==null?void 0:i.class,i==null?void 0:i.className)(l);if(g&&!Array.isArray(g))throw new TypeError(`The "compoundVariants" prop must be an array. Received: ${typeof g}`);let d={base:t==null?void 0:t.base,...b},T=(e,r,n=[],f)=>{let a=n;if(typeof r=="string")a.push(w(r).split(" ").map(u=>`${e}:${u}`));else if(Array.isArray(r))a.push(r.flatMap(u=>`${e}:${u}`));else if(typeof r=="object"&&typeof f=="string"){let u=r==null?void 0:r[f];if(u&&typeof u=="string"){let s=w(u);a[f]=a[f]?[...a[f],...s.split(" ").map(y=>`${e}:${y}`)]:s.split(" ").map(y=>`${e}:${y}`);}else Array.isArray(u)&&u.length>0&&(a[f]=u.flatMap(s=>`${e}:${s}`));}return a},C=(e,r=null)=>{let n=c==null?void 0:c[e];if(typeof n!="object"||!m(n))return null;let f=i==null?void 0:i[e],a=o==null?void 0:o[e],u=[];if(f===null)return null;let s=M(f);typeof s=="object"&&(u=Object.keys(s).reduce((N,x)=>{let E=s[x],U=n==null?void 0:n[E];return x==="initial"?(a=E,N):T(x,U,N,r)},[]));let y=n[s]||n[M(a)];return typeof u=="object"&&typeof r=="string"&&u[r]?S(u,y):u.length>0?[y,...u]:y},v=c?Object.keys(c).map(C):null,F=e=>!c||typeof c!="object"?null:Object.keys(c).map(r=>{let n=C(r,e);return e==="base"&&typeof n=="string"?n:n&&n[e]}).filter(Boolean),I=i&&Object.fromEntries(Object.entries(i).filter(([,e])=>e!==void 0)),h=g==null?void 0:g.filter(({class:e,className:r,...n})=>Object.entries(n).every(([f,a])=>{var y;let u=typeof(i==null?void 0:i[f])=="object"?(y=i[f])==null?void 0:y.initial:{},s={...o,...u,...I};return Array.isArray(a)?a.includes(s[f]):s[f]===a})).flatMap(({class:e,className:r})=>[e,r]),R=()=>{let e=h;return Array.isArray(e)?e.reduce((r,n)=>(typeof n=="string"&&(r.base=j(r.base,n)(l)),typeof n=="object"&&Object.entries(n).forEach(([f,a])=>{r[f]=j(r[f],a)(l);}),r),{}):e};if(m(b)){let e=(A=R())!=null?A:[];return {...typeof d=="object"&&m(d)?Object.keys(d).reduce((n,f)=>(n[f]=a=>j(d[f],F(f),e==null?void 0:e[f],a==null?void 0:a.class,a==null?void 0:a.className)(l),n),{}):{}}}return j(t==null?void 0:t.base,v,h,i==null?void 0:i.class,i==null?void 0:i.className)(l)},B=()=>{if(!(!c||typeof c!="object"))return Object.keys(c)};return $.variantkeys=B(),$};
|
|
7
6
|
|
|
8
|
-
exports.tv =
|
|
7
|
+
exports.tv = G;
|
package/dist/index.d.ts
CHANGED
|
@@ -39,21 +39,27 @@ export type TVScreenPropsValue<V extends TVVariants<S>, K extends keyof V> = {
|
|
|
39
39
|
[K2 in TVScreens]?: StringToBoolean<keyof V[K]>;
|
|
40
40
|
};
|
|
41
41
|
|
|
42
|
-
export type TVProps<V extends TVVariants<S>, S extends TVSlots> =
|
|
43
|
-
|
|
44
|
-
|
|
42
|
+
export type TVProps<V extends TVVariants<S>, S extends TVSlots> = V extends undefined
|
|
43
|
+
? ClassProp<ClassValue>
|
|
44
|
+
: {
|
|
45
|
+
[K in keyof V]?: StringToBoolean<keyof V[K]> | TVScreenPropsValue<V, K>;
|
|
46
|
+
} & ClassProp<ClassValue>;
|
|
47
|
+
|
|
48
|
+
export type TVVariantKeys<V extends TVVariants<S>, S extends TVSlots> = V extends Object
|
|
49
|
+
? Array<keyof V>
|
|
50
|
+
: undefined;
|
|
45
51
|
|
|
46
52
|
export type TVReturnType<V extends TVVariants<S>, S extends TVSlots, B extends ClassValue> = {
|
|
47
53
|
(props?: TVProps<V, S>): S extends undefined
|
|
48
54
|
? string
|
|
49
55
|
: {[K in TVSlotsWithBase<S, B>]: (slotProps?: ClassProp) => string};
|
|
50
|
-
}
|
|
56
|
+
} & Record<"variantkeys", TVVariantKeys<V, S>>;
|
|
51
57
|
|
|
52
58
|
export type TV = {
|
|
53
59
|
<
|
|
54
|
-
V extends TVVariants<S> =
|
|
55
|
-
CV extends TVCompoundVariants<V, S, B> =
|
|
56
|
-
DV extends TVDefaultVariants<V, S> =
|
|
60
|
+
V extends TVVariants<S> = undefined,
|
|
61
|
+
CV extends TVCompoundVariants<V, S, B> = undefined,
|
|
62
|
+
DV extends TVDefaultVariants<V, S> = undefined,
|
|
57
63
|
C extends TVConfig,
|
|
58
64
|
B extends ClassValue = undefined,
|
|
59
65
|
S extends TVSlots = undefined,
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import C from 'fs';
|
|
2
1
|
import { extendTailwindMerge, twMerge } from 'tailwind-merge';
|
|
3
2
|
|
|
4
|
-
var
|
|
3
|
+
var O=(...t)=>t.flat(1/0).filter(Boolean).join(" "),M=t=>typeof t=="boolean"?`${t}`:t===0?"0":t,m=t=>t&&Object.keys(t).length>0,j=(...t)=>(l={})=>l.twMerge?(m(l.twMergeConfig)?extendTailwindMerge(l.twMergeConfig):twMerge)(O(t)):O(t),S=(t,l)=>{let b={};return typeof t!="object"||typeof l!="object"||Object.keys(t).forEach(c=>{l[c]?b[c]=O([t[c],l[c]]):b[c]=t[c];}),b},w=t=>!t||typeof t!="string"?t:t.replace(/\s+/g," ").trim();var G=(t,l={twMerge:!0,twMergeConfig:{}})=>{let{slots:b={},variants:c={},compoundVariants:g=[],defaultVariants:o={}}=t,$=i=>{var A;if(c==null&&!m(b))return j(t==null?void 0:t.base,i==null?void 0:i.class,i==null?void 0:i.className)(l);if(g&&!Array.isArray(g))throw new TypeError(`The "compoundVariants" prop must be an array. Received: ${typeof g}`);let d={base:t==null?void 0:t.base,...b},T=(e,r,n=[],f)=>{let a=n;if(typeof r=="string")a.push(w(r).split(" ").map(u=>`${e}:${u}`));else if(Array.isArray(r))a.push(r.flatMap(u=>`${e}:${u}`));else if(typeof r=="object"&&typeof f=="string"){let u=r==null?void 0:r[f];if(u&&typeof u=="string"){let s=w(u);a[f]=a[f]?[...a[f],...s.split(" ").map(y=>`${e}:${y}`)]:s.split(" ").map(y=>`${e}:${y}`);}else Array.isArray(u)&&u.length>0&&(a[f]=u.flatMap(s=>`${e}:${s}`));}return a},C=(e,r=null)=>{let n=c==null?void 0:c[e];if(typeof n!="object"||!m(n))return null;let f=i==null?void 0:i[e],a=o==null?void 0:o[e],u=[];if(f===null)return null;let s=M(f);typeof s=="object"&&(u=Object.keys(s).reduce((N,x)=>{let E=s[x],U=n==null?void 0:n[E];return x==="initial"?(a=E,N):T(x,U,N,r)},[]));let y=n[s]||n[M(a)];return typeof u=="object"&&typeof r=="string"&&u[r]?S(u,y):u.length>0?[y,...u]:y},v=c?Object.keys(c).map(C):null,F=e=>!c||typeof c!="object"?null:Object.keys(c).map(r=>{let n=C(r,e);return e==="base"&&typeof n=="string"?n:n&&n[e]}).filter(Boolean),I=i&&Object.fromEntries(Object.entries(i).filter(([,e])=>e!==void 0)),h=g==null?void 0:g.filter(({class:e,className:r,...n})=>Object.entries(n).every(([f,a])=>{var y;let u=typeof(i==null?void 0:i[f])=="object"?(y=i[f])==null?void 0:y.initial:{},s={...o,...u,...I};return Array.isArray(a)?a.includes(s[f]):s[f]===a})).flatMap(({class:e,className:r})=>[e,r]),R=()=>{let e=h;return Array.isArray(e)?e.reduce((r,n)=>(typeof n=="string"&&(r.base=j(r.base,n)(l)),typeof n=="object"&&Object.entries(n).forEach(([f,a])=>{r[f]=j(r[f],a)(l);}),r),{}):e};if(m(b)){let e=(A=R())!=null?A:[];return {...typeof d=="object"&&m(d)?Object.keys(d).reduce((n,f)=>(n[f]=a=>j(d[f],F(f),e==null?void 0:e[f],a==null?void 0:a.class,a==null?void 0:a.className)(l),n),{}):{}}}return j(t==null?void 0:t.base,v,h,i==null?void 0:i.class,i==null?void 0:i.className)(l)},B=()=>{if(!(!c||typeof c!="object"))return Object.keys(c)};return $.variantkeys=B(),$};
|
|
5
4
|
|
|
6
|
-
export {
|
|
5
|
+
export { G as tv };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tailwind-variants",
|
|
3
|
-
"version": "0.0.17
|
|
3
|
+
"version": "0.0.17",
|
|
4
4
|
"description": "🦄 Tailwindcss first-class variant API",
|
|
5
5
|
"author": "Junior Garcia <jrgarciadev@gmail.com>",
|
|
6
6
|
"license": "MIT",
|
|
@@ -70,8 +70,10 @@
|
|
|
70
70
|
"keywords": [
|
|
71
71
|
"tailwindcss",
|
|
72
72
|
"classes",
|
|
73
|
+
"responsive",
|
|
74
|
+
"zero-runtime",
|
|
73
75
|
"variants",
|
|
74
|
-
"styled
|
|
76
|
+
"styled",
|
|
75
77
|
"styles"
|
|
76
78
|
],
|
|
77
79
|
"engines": {
|