nestable-tailwind-variants 0.4.4 → 0.4.5
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 +14 -3
- package/dist/cache.d.ts.map +1 -1
- package/dist/cache.js.map +1 -1
- package/dist/merge.d.ts.map +1 -1
- package/dist/merge.js.map +1 -1
- package/dist/ntv.d.ts.map +1 -1
- package/dist/ntv.js.map +1 -1
- package/dist/types.d.ts +7 -44
- package/dist/types.d.ts.map +1 -1
- package/package.json +13 -13
package/README.md
CHANGED
|
@@ -556,7 +556,8 @@ Add to `.vscode/settings.json` for [Tailwind CSS IntelliSense](https://marketpla
|
|
|
556
556
|
```json
|
|
557
557
|
{
|
|
558
558
|
"tailwindCSS.experimental.classRegex": [
|
|
559
|
-
["ntv(?:<[\\s\\S]*?>)?\\s*\\(\\s*\\{([\\s\\S]*?)\\}\\s*\\)", "[\"'`]([^\"'`]*)[\"'`]"]
|
|
559
|
+
["ntv(?:<[\\s\\S]*?>)?\\s*\\(\\s*\\{([\\s\\S]*?)\\}\\s*\\)", "[\"'`]([^\"'`]*)[\"'`]"],
|
|
560
|
+
"className\\s*:\\s*[\"'`]([^\"'`]*)[\"'`]"
|
|
560
561
|
]
|
|
561
562
|
}
|
|
562
563
|
```
|
|
@@ -578,13 +579,23 @@ Add to your Prettier config for [prettier-plugin-tailwindcss](https://github.com
|
|
|
578
579
|
Add to your ESLint config for [eslint-plugin-better-tailwindcss](https://github.com/schoero/eslint-plugin-better-tailwindcss) linting:
|
|
579
580
|
|
|
580
581
|
```js
|
|
581
|
-
import
|
|
582
|
+
import betterTailwindcss from 'eslint-plugin-better-tailwindcss';
|
|
583
|
+
import { getDefaultSelectors } from 'eslint-plugin-better-tailwindcss/defaults';
|
|
584
|
+
import { SelectorKind } from 'eslint-plugin-better-tailwindcss/types';
|
|
582
585
|
|
|
583
586
|
export default [
|
|
584
587
|
{
|
|
588
|
+
extends: [betterTailwindcss.configs.recommended],
|
|
585
589
|
settings: {
|
|
586
590
|
'better-tailwindcss': {
|
|
587
|
-
|
|
591
|
+
selectors: [
|
|
592
|
+
...getDefaultSelectors(),
|
|
593
|
+
{
|
|
594
|
+
kind: SelectorKind.Callee,
|
|
595
|
+
name: '^ntv$',
|
|
596
|
+
match: [{ type: 'objectValues' }],
|
|
597
|
+
},
|
|
598
|
+
],
|
|
588
599
|
},
|
|
589
600
|
},
|
|
590
601
|
},
|
package/dist/cache.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,KAAK,SAAS,GAAG,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAIxD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,SAAS,CAOjE"}
|
package/dist/cache.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAMrD,MAAM,KAAK,GAAG,IAAI,GAAG,EAA4B,CAAC;AAElD,MAAM,UAAU,gBAAgB,CAAC,MAAqB;IACpD,IAAI,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACrC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/dist/merge.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../src/merge.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../src/merge.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,gBAAgB,EAEhB,uBAAuB,EACvB,UAAU,EACV,aAAa,EACd,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,SAAS,gBAAgB,EAAE,EACvE,GAAG,QAAQ,EAAE,CAAC,GACb,CAAC,OAAO,CAAC,EAAE,UAAU,KAAK,aAAa,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAmBrE;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,QAAQ,CAAC,CAAC,SAAS,SAAS,gBAAgB,EAAE,EAC5D,GAAG,QAAQ,EAAE,CAAC,GACb,aAAa,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAE3C;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,cAAc,CAC5B,cAAc,CAAC,EAAE,UAAU,GAC1B,CAAC,CAAC,SAAS,SAAS,gBAAgB,EAAE,EACvC,GAAG,QAAQ,EAAE,CAAC,KACX,aAAa,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAQ7C"}
|
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;
|
|
1
|
+
{"version":3,"file":"merge.js","sourceRoot":"","sources":["../src/merge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAS9C;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CACjC,GAAG,QAAW;IAEd,OAAO,SAAS,WAAW,CAAC,UAAsB,EAAE;QAClD,uCAAuC;QACvC,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;QAC/D,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,eAAe,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAY,CAAC,CAAC,CAAC;YAC/D,OAAO,eAAe,CAAC,GAAG,eAAe,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QACvE,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,oBAAoB,CAClC,GAAG,QAAW;QAEd,OAAO,mBAAmB,CAAC,GAAG,QAAQ,CAAC,CAAC,cAAc,CAErD,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC"}
|
package/dist/ntv.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ntv.d.ts","sourceRoot":"","sources":["../src/ntv.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ntv.d.ts","sourceRoot":"","sources":["../src/ntv.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAGV,UAAU,EACV,KAAK,EACL,MAAM,EACN,aAAa,EACb,aAAa,EACd,MAAM,YAAY,CAAC;AAmEpB;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,GAAG,CAAC,MAAM,SAAS,KAAK,EACtC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,EACrF,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;AA4BtB;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,SAAS,CAAC,cAAc,CAAC,EAAE,UAAU,GAAG;IACtD,CAAC,MAAM,SAAS,KAAK,EACnB,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,GACpF,aAAa,CAAC,MAAM,CAAC,CAAC;IACzB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;CAChE,CAIA"}
|
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;
|
|
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;AAW9C,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,MAA+B,EAC/B,KAA8B;IAE9B,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,UAAU,EAAE,GAAG,MAAM,CAAC;IAClD,MAAM,OAAO,GAAiB,EAAE,CAAC;IACjC,IAAI,0BAA0B,GAAG,KAAK,CAAC;IAEvC,SAAS,aAAa,CAAC,KAAc;QACnC,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,CAAC,KAAmB,CAAC,CAAC;IAC/B,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,2BAA2B;QAC3B,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CACb,0FAA0F,GAAG,IAAI,CAClG,CAAC;QACJ,CAAC;QAED,0DAA0D;QAC1D,IAAI,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAClC,IAAI,SAAS,EAAE,CAAC;gBACd,0BAA0B,GAAG,IAAI,CAAC;gBAClC,OAAO,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;YACxC,CAAC;YACD,SAAS;QACX,CAAC;QAED,kEAAkE;QAClE,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,eAAe,GACnB,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;YAC/E,OAAO,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IAED,kDAAkD;IAClD,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAChC,OAAO,CAAC,OAAO,CAAC,QAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,2BAA2B;IAC3B,OAAO,CAAC,OAAO,CAAC,KAAmB,CAAC,CAAC;IAErC,OAAO,OAAO,CAAC;AACjB,CAAC;AAkCD,MAAM,UAAU,GAAG,CAAC,MAAc,EAAE,UAAsB,EAAE;IAC1D,iDAAiD;IACjD,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;IAC7F,CAAC;IACD,IAAI,WAAW,IAAI,MAAM,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;IACjG,CAAC;IAED,uCAAuC;IACvC,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAC/D,MAAM,eAAe,GAAG,WAAW;QACjC,CAAC,CAAC,aAAa;YACb,CAAC,CAAC,gBAAgB,CAAC,aAAa,CAAC;YACjC,CAAC,CAAC,OAAO;QACX,CAAC,CAAC,MAAM,CAAC;IAEX,OAAO,SAAS,aAAa,CAAC,EAC5B,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,aAAa,EACxB,GAAG,KAAK,KAC+B,EAAE;QACzC,MAAM,eAAe,GAAG,iBAAiB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACzD,OAAO,eAAe,CAAC,GAAG,eAAe,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;IACvE,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,UAAU,SAAS,CAAC,cAA2B;IAMnD,OAAO,SAAS,eAAe,CAAC,MAAwC;QACtE,OAAO,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACrC,CAAC,CAAC;AACJ,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -16,23 +16,9 @@ type RequiredKeys<T> = {
|
|
|
16
16
|
}[keyof T];
|
|
17
17
|
type OptionalKeys<T> = Exclude<keyof T, RequiredKeys<T>>;
|
|
18
18
|
type KeysOfUnion<T> = T extends unknown ? keyof T : never;
|
|
19
|
-
/**
|
|
20
|
-
* Checks if a key is required in at least one member of a union type.
|
|
21
|
-
* Returns `true` if the key is required in any member, `never` otherwise.
|
|
22
|
-
*
|
|
23
|
-
* @example
|
|
24
|
-
* ```ts
|
|
25
|
-
* // Usage: `true extends IsRequiredInAny<T, K> ? ... : ...`
|
|
26
|
-
* // When K is required in any union member, the result includes `true`,
|
|
27
|
-
* // so `true extends (true | never)` evaluates to true.
|
|
28
|
-
* ```
|
|
29
|
-
*/
|
|
30
19
|
type IsRequiredInAny<T, K extends PropertyKey> = T extends unknown ? K extends keyof T ? K extends RequiredKeys<T> ? true : never : never : never;
|
|
31
20
|
type ValueFromUnion<T, K extends PropertyKey> = T extends unknown ? K extends keyof T ? Exclude<T[K], undefined> : never : never;
|
|
32
|
-
type
|
|
33
|
-
[K in keyof T]: NonNullable<T[K]> extends boolean | string ? never : K;
|
|
34
|
-
}[keyof T];
|
|
35
|
-
export type ValidateProps<T, TInvalidKey = InvalidPropKey<T>> = [TInvalidKey] extends [never] ? T : `Error: Property '${TInvalidKey & string}' must be boolean or string`;
|
|
21
|
+
export type ValidateProps<T> = T;
|
|
36
22
|
type NestedScheme<TProps extends Props = {}> = {
|
|
37
23
|
$base?: ClassValue;
|
|
38
24
|
$default?: ClassValue | NestedScheme<TProps>;
|
|
@@ -42,12 +28,7 @@ type VariantMapping<TVariant extends string, TProps extends Props> = {
|
|
|
42
28
|
} & {
|
|
43
29
|
$default?: ClassValue | NestedScheme<TProps>;
|
|
44
30
|
};
|
|
45
|
-
|
|
46
|
-
* Determines the value type for a property condition based on the property's type.
|
|
47
|
-
* - Boolean properties map to ClassValue or NestedScheme
|
|
48
|
-
* - String properties map to VariantMapping with their possible values
|
|
49
|
-
*/
|
|
50
|
-
type GetPropConditionValue<TProps extends Props, K extends PropertyKey> = NonNullable<ValueFromUnion<TProps, K>> extends boolean ? ClassValue | NestedScheme<TProps> : NonNullable<ValueFromUnion<TProps, K>> extends string ? VariantMapping<NonNullable<ValueFromUnion<TProps, K>>, TProps> : never;
|
|
31
|
+
type GetPropConditionValue<TProps extends Props, K extends PropertyKey, TValue = NonNullable<ValueFromUnion<TProps, K>>> = TValue extends boolean ? ClassValue | NestedScheme<TProps> : TValue extends string ? VariantMapping<TValue, TProps> : never;
|
|
51
32
|
type PropConditions<TProps extends Props> = {
|
|
52
33
|
[K in KeysOfUnion<TProps> & string]?: GetPropConditionValue<TProps, K>;
|
|
53
34
|
};
|
|
@@ -64,43 +45,25 @@ type NormalizeProps<T, TOriginal = T> = T extends unknown ? Flatten<{
|
|
|
64
45
|
}> : never;
|
|
65
46
|
type HasRequiredKey<T> = true extends IsRequiredInAny<T, KeysOfUnion<T>> ? true : false;
|
|
66
47
|
type StyleFunctionSignature<TProps> = HasRequiredKey<TProps> extends false ? (props?: NormalizeProps<TProps> & ClassProp) => string : (props: NormalizeProps<TProps> & ClassProp) => string;
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
*/
|
|
48
|
+
type FilterStyleProps<T> = T extends unknown ? {
|
|
49
|
+
[K in keyof T as NonNullable<T[K]> extends boolean | string ? K : never]: T[K];
|
|
50
|
+
} : never;
|
|
71
51
|
export type StyleFunction<TProps = Props> = StyleFunctionSignature<TProps> & {
|
|
72
|
-
readonly __ntvProps?: TProps
|
|
52
|
+
readonly __ntvProps?: FilterStyleProps<TProps>;
|
|
73
53
|
};
|
|
74
54
|
export type AnyStyleFunction = ((...args: any[]) => string) & {
|
|
75
55
|
readonly __ntvProps?: unknown;
|
|
76
56
|
};
|
|
77
|
-
/**
|
|
78
|
-
* Merges a union of props types into a single props type.
|
|
79
|
-
* Required properties stay required if they are required in ANY union member.
|
|
80
|
-
* Optional properties stay optional only if they are optional in ALL union members.
|
|
81
|
-
*/
|
|
82
57
|
type MergeProps<T> = Flatten<{
|
|
83
58
|
[K in KeysOfUnion<T> as true extends IsRequiredInAny<T, K> ? K : never]: ValueFromUnion<T, K>;
|
|
84
59
|
} & {
|
|
85
60
|
[K in KeysOfUnion<T> as true extends IsRequiredInAny<T, K> ? never : K]?: ValueFromUnion<T, K>;
|
|
86
61
|
}>;
|
|
87
|
-
/**
|
|
88
|
-
* Applies MergeProps distributively across all combinations of two union types.
|
|
89
|
-
* Example: MergeTwoUnions<A | B, C | D> = MergeProps<A | C> | MergeProps<A | D> | MergeProps<B | C> | MergeProps<B | D>
|
|
90
|
-
*/
|
|
91
62
|
type MergeTwoUnions<TFirst, TSecond> = TFirst extends unknown ? TSecond extends unknown ? MergeProps<TFirst | TSecond> : never : never;
|
|
92
|
-
/**
|
|
93
|
-
* Recursively merges a tuple of props types, applying distributive merge at each step.
|
|
94
|
-
* Example: MergeAllProps<[A | B, C, D | E]> produces all combinations.
|
|
95
|
-
*/
|
|
96
63
|
type MergeAllProps<TTuple extends readonly unknown[]> = TTuple extends readonly [] ? unknown : TTuple extends readonly [infer TOnly] ? TOnly : TTuple extends readonly [infer TFirst, infer TSecond, ...infer TRest] ? MergeAllProps<[MergeTwoUnions<TFirst, TSecond>, ...TRest]> : unknown;
|
|
97
64
|
type ExtractStyleFunctionProps<T> = T extends {
|
|
98
65
|
readonly __ntvProps?: infer P;
|
|
99
66
|
} ? NonNullable<P> : never;
|
|
100
|
-
/**
|
|
101
|
-
* Merges the props types from multiple style functions.
|
|
102
|
-
* Handles union types distributively to ensure all type combinations are properly merged.
|
|
103
|
-
*/
|
|
104
67
|
export type MergeStyleFunctionProps<T extends readonly AnyStyleFunction[]> = MergeAllProps<{
|
|
105
68
|
[K in keyof T]: ExtractStyleFunctionProps<T[K]>;
|
|
106
69
|
}>;
|
|
@@ -108,7 +71,7 @@ export type TwMergeConfig = Parameters<typeof extendTailwindMerge>[0];
|
|
|
108
71
|
export interface NtvOptions {
|
|
109
72
|
/**
|
|
110
73
|
* Whether to merge the class names with `tailwind-merge` library.
|
|
111
|
-
*
|
|
74
|
+
* This avoids duplicate tailwind classes. (Recommended)
|
|
112
75
|
* @see https://github.com/dcastil/tailwind-merge
|
|
113
76
|
* @default true
|
|
114
77
|
*/
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,IAAI,UAAU,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAExF,YAAY,EAAE,UAAU,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.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.5",
|
|
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": {
|
|
@@ -21,23 +21,24 @@
|
|
|
21
21
|
"./package.json": "./package.json"
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"tailwind-merge": "^3.
|
|
24
|
+
"tailwind-merge": "^3.5.0"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
|
-
"@commitlint/cli": "^20.4.
|
|
28
|
-
"@commitlint/config-conventional": "^20.4.
|
|
29
|
-
"bumpp": "^10.4.
|
|
30
|
-
"knip": "^5.
|
|
31
|
-
"lint-staged": "^16.2
|
|
32
|
-
"oxfmt": "^0.
|
|
33
|
-
"oxlint": "^1.
|
|
34
|
-
"
|
|
27
|
+
"@commitlint/cli": "^20.4.3",
|
|
28
|
+
"@commitlint/config-conventional": "^20.4.3",
|
|
29
|
+
"bumpp": "^10.4.1",
|
|
30
|
+
"knip": "^5.85.0",
|
|
31
|
+
"lint-staged": "^16.3.2",
|
|
32
|
+
"oxfmt": "^0.36.0",
|
|
33
|
+
"oxlint": "^1.51.0",
|
|
34
|
+
"oxlint-tsgolint": "^0.16.0",
|
|
35
|
+
"typescript": "~5.9.3",
|
|
35
36
|
"vitest": "^4.0.18",
|
|
36
37
|
"node": "runtime:^24.13.0"
|
|
37
38
|
},
|
|
38
39
|
"lint-staged": {
|
|
39
40
|
"*": "oxfmt --no-error-on-unmatched-pattern",
|
|
40
|
-
"*.{js,jsx,ts,tsx,mjs,cjs}": "
|
|
41
|
+
"*.{js,jsx,ts,tsx,mjs,cjs}": "oxlint"
|
|
41
42
|
},
|
|
42
43
|
"devEngines": {
|
|
43
44
|
"runtime": {
|
|
@@ -54,7 +55,6 @@
|
|
|
54
55
|
"lint": "oxlint",
|
|
55
56
|
"lint:fix": "oxlint --fix",
|
|
56
57
|
"release": "bumpp -r",
|
|
57
|
-
"test": "vitest --run"
|
|
58
|
-
"typecheck": "tsc --noEmit"
|
|
58
|
+
"test": "vitest --run"
|
|
59
59
|
}
|
|
60
60
|
}
|