nestable-tailwind-variants 0.4.1 → 0.4.2
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/merge.js +5 -5
- package/dist/merge.js.map +1 -1
- package/dist/ntv.d.ts +3 -3
- package/dist/ntv.d.ts.map +1 -1
- package/dist/ntv.js +6 -6
- package/dist/ntv.js.map +1 -1
- package/package.json +9 -9
package/dist/merge.js
CHANGED
|
@@ -13,15 +13,15 @@ import { getCachedTwMerge } from './cache.js';
|
|
|
13
13
|
* ```
|
|
14
14
|
*/
|
|
15
15
|
export function mergeNtvWithOptions(...styleFns) {
|
|
16
|
-
return function
|
|
17
|
-
const
|
|
16
|
+
return function withOptions({ twMerge: usesTwMerge = true, twMergeConfig, } = {}) {
|
|
17
|
+
const mergeClassNames = usesTwMerge
|
|
18
18
|
? twMergeConfig
|
|
19
19
|
? getCachedTwMerge(twMergeConfig)
|
|
20
20
|
: twMerge
|
|
21
21
|
: twJoin;
|
|
22
|
-
return function
|
|
22
|
+
return function styleFunction({ class: slotClass, className: slotClassName, ...props } = {}) {
|
|
23
23
|
const styleResults = styleFns.map((fn) => fn(props));
|
|
24
|
-
return
|
|
24
|
+
return mergeClassNames(...styleResults, slotClass, slotClassName);
|
|
25
25
|
};
|
|
26
26
|
};
|
|
27
27
|
}
|
|
@@ -71,7 +71,7 @@ export function mergeNtv(...styleFns) {
|
|
|
71
71
|
* ```
|
|
72
72
|
*/
|
|
73
73
|
export function createMergeNtv(defaultOptions) {
|
|
74
|
-
return function
|
|
74
|
+
return function preconfiguredMergeNtv(...styleFns) {
|
|
75
75
|
return mergeNtvWithOptions(...styleFns)(defaultOptions);
|
|
76
76
|
};
|
|
77
77
|
}
|
package/dist/merge.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge.js","sourceRoot":"","sources":["../src/merge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAQjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CACjC,GAAG,QAAW;IAEd,OAAO,SAAS,
|
|
1
|
+
{"version":3,"file":"merge.js","sourceRoot":"","sources":["../src/merge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAQjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CACjC,GAAG,QAAW;IAEd,OAAO,SAAS,WAAW,CAAC,EAC1B,OAAO,EAAE,WAAW,GAAG,IAAI,EAC3B,aAAa,MACC,EAAE;QAChB,MAAM,eAAe,GAAG,WAAW;YACjC,CAAC,CAAC,aAAa;gBACb,CAAC,CAAC,gBAAgB,CAAC,aAAa,CAAC;gBACjC,CAAC,CAAC,OAAO;YACX,CAAC,CAAC,MAAM,CAAC;QAEX,OAAO,SAAS,aAAa,CAAC,EAC5B,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,aAAa,EACxB,GAAG,KAAK,KAC+B,EAAE;YACzC,MAAM,YAAY,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAY,CAAC,CAAC,CAAC;YAC5D,OAAO,eAAe,CAAC,GAAG,YAAY,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QACpE,CAAyD,CAAC;IAC5D,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,QAAQ,CACtB,GAAG,QAAW;IAEd,OAAO,mBAAmB,CAAC,GAAG,QAAQ,CAAC,EAA0D,CAAC;AACpG,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,cAAc,CAC5B,cAA2B;IAI3B,OAAO,SAAS,qBAAqB,CACnC,GAAG,QAAW;QAEd,OAAO,mBAAmB,CAAC,GAAG,QAAQ,CAAC,CAAC,cAAc,CAErD,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC"}
|
package/dist/ntv.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { NtvOptions, Scheme, StyleFunction } from './types.js';
|
|
1
|
+
import type { NtvOptions, Props, Scheme, StyleFunction } from './types.js';
|
|
2
2
|
/**
|
|
3
3
|
* Create a nestable tailwind variants style function.
|
|
4
4
|
*
|
|
@@ -23,7 +23,7 @@ import type { NtvOptions, Scheme, StyleFunction } from './types.js';
|
|
|
23
23
|
* button({ variant: 'primary', isDisabled: true }); // 'px-4 py-2 rounded bg-blue-500 text-white opacity-50 cursor-not-allowed'
|
|
24
24
|
* ```
|
|
25
25
|
*/
|
|
26
|
-
export declare function ntv<TProps extends
|
|
26
|
+
export declare function ntv<TProps extends Props>(scheme: Scheme<TProps>, options?: NtvOptions): StyleFunction<TProps>;
|
|
27
27
|
export declare function ntv(scheme: Scheme & Record<string, unknown>, options?: NtvOptions): StyleFunction<any>;
|
|
28
28
|
/**
|
|
29
29
|
* Create a pre-configured ntv function with fixed options.
|
|
@@ -53,7 +53,7 @@ export declare function ntv(scheme: Scheme & Record<string, unknown>, options?:
|
|
|
53
53
|
* ```
|
|
54
54
|
*/
|
|
55
55
|
export declare function createNtv(defaultOptions?: NtvOptions): {
|
|
56
|
-
<TProps extends
|
|
56
|
+
<TProps extends Props>(scheme: Scheme<TProps>): StyleFunction<TProps>;
|
|
57
57
|
(scheme: Scheme & Record<string, unknown>): StyleFunction<any>;
|
|
58
58
|
};
|
|
59
59
|
//# sourceMappingURL=ntv.d.ts.map
|
package/dist/ntv.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ntv.d.ts","sourceRoot":"","sources":["../src/ntv.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAyB,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"ntv.d.ts","sourceRoot":"","sources":["../src/ntv.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAyB,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AA6DlG;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,GAAG,CAAC,MAAM,SAAS,KAAK,EACtC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EACtB,OAAO,CAAC,EAAE,UAAU,GACnB,aAAa,CAAC,MAAM,CAAC,CAAC;AACzB,wBAAgB,GAAG,CACjB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,OAAO,CAAC,EAAE,UAAU,GACnB,aAAa,CAAC,GAAG,CAAC,CAAC;AA6BtB;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,SAAS,CAAC,cAAc,CAAC,EAAE,UAAU,GAAG;IACtD,CAAC,MAAM,SAAS,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACtE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;CAChE,CAIA"}
|
package/dist/ntv.js
CHANGED
|
@@ -32,8 +32,8 @@ function resolveConditions({ $base, $default, ...conditions }, props) {
|
|
|
32
32
|
}
|
|
33
33
|
// Variant conditions (nested objects)
|
|
34
34
|
if (isPlainObject(value)) {
|
|
35
|
-
const
|
|
36
|
-
classes.push(...toClassValues(value[
|
|
35
|
+
const variantKey = typeof propValue === 'string' && propValue in value ? propValue : '$default';
|
|
36
|
+
classes.push(...toClassValues(value[variantKey]));
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
if (!hasMatchedCondition) {
|
|
@@ -49,14 +49,14 @@ export function ntv(scheme, { twMerge: usesTwMerge = true, twMergeConfig } = {})
|
|
|
49
49
|
if ('className' in scheme) {
|
|
50
50
|
throw new Error('The "className" property is not allowed in ntv scheme. Use "$base" instead.');
|
|
51
51
|
}
|
|
52
|
-
const
|
|
52
|
+
const mergeClassNames = usesTwMerge
|
|
53
53
|
? twMergeConfig
|
|
54
54
|
? getCachedTwMerge(twMergeConfig)
|
|
55
55
|
: twMerge
|
|
56
56
|
: twJoin;
|
|
57
|
-
return function
|
|
57
|
+
return function styleFunction({ class: slotClass, className: slotClassName, ...props } = {}) {
|
|
58
58
|
const resolvedClasses = resolveConditions(scheme, props);
|
|
59
|
-
return
|
|
59
|
+
return mergeClassNames(...resolvedClasses, slotClass, slotClassName);
|
|
60
60
|
};
|
|
61
61
|
}
|
|
62
62
|
/**
|
|
@@ -87,7 +87,7 @@ export function ntv(scheme, { twMerge: usesTwMerge = true, twMergeConfig } = {})
|
|
|
87
87
|
* ```
|
|
88
88
|
*/
|
|
89
89
|
export function createNtv(defaultOptions) {
|
|
90
|
-
return function
|
|
90
|
+
return function preconfiguredNtv(scheme) {
|
|
91
91
|
return ntv(scheme, defaultOptions);
|
|
92
92
|
};
|
|
93
93
|
}
|
package/dist/ntv.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ntv.js","sourceRoot":"","sources":["../src/ntv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,iBAAiB,CACxB,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,UAAU,EAA2B,EAC3D,KAA8B;IAE9B,MAAM,OAAO,GAAiB,EAAE,CAAC;IACjC,IAAI,mBAAmB,GAAG,KAAK,CAAC;IAEhC,SAAS,aAAa,CAAC,KAAc;QACnC,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAmB,CAAC,CAAC;IACxF,CAAC;IAED,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACtD,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QAE7B,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CACb,0FAA0F,GAAG,IAAI,CAClG,CAAC;QACJ,CAAC;QAED,0CAA0C;QAC1C,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACrD,IAAI,SAAS,EAAE,CAAC;gBACd,mBAAmB,GAAG,IAAI,CAAC;gBAC3B,OAAO,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;YACxC,CAAC;YACD,SAAS;QACX,CAAC;QAED,sCAAsC;QACtC,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,
|
|
1
|
+
{"version":3,"file":"ntv.js","sourceRoot":"","sources":["../src/ntv.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nestable-tailwind-variants",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.2",
|
|
4
4
|
"description": "Tailwind CSS variant library with nestable conditions for compound styling instead of flat compoundVariants.",
|
|
5
5
|
"homepage": "https://github.com/yuheiy/nestable-tailwind-variants#readme",
|
|
6
6
|
"bugs": {
|
|
@@ -24,16 +24,16 @@
|
|
|
24
24
|
"tailwind-merge": "^3.4.0"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
|
-
"@commitlint/cli": "^20.
|
|
28
|
-
"@commitlint/config-conventional": "^20.
|
|
27
|
+
"@commitlint/cli": "^20.4.0",
|
|
28
|
+
"@commitlint/config-conventional": "^20.4.0",
|
|
29
29
|
"bumpp": "^10.4.0",
|
|
30
|
-
"knip": "^5.82.
|
|
30
|
+
"knip": "^5.82.1",
|
|
31
31
|
"lint-staged": "^16.2.7",
|
|
32
|
-
"oxfmt": "^0.
|
|
33
|
-
"oxlint": "^1.
|
|
32
|
+
"oxfmt": "^0.27.0",
|
|
33
|
+
"oxlint": "^1.42.0",
|
|
34
34
|
"typescript": "^5.9.3",
|
|
35
|
-
"vitest": "^4.0.
|
|
36
|
-
"node": "runtime:^24.
|
|
35
|
+
"vitest": "^4.0.18",
|
|
36
|
+
"node": "runtime:^24.13.0"
|
|
37
37
|
},
|
|
38
38
|
"lint-staged": {
|
|
39
39
|
"*": "oxfmt --no-error-on-unmatched-pattern",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"devEngines": {
|
|
43
43
|
"runtime": {
|
|
44
44
|
"name": "node",
|
|
45
|
-
"version": "^24.
|
|
45
|
+
"version": "^24.13.0",
|
|
46
46
|
"onFail": "download"
|
|
47
47
|
}
|
|
48
48
|
},
|