nestable-tailwind-variants 0.4.0 → 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/README.md CHANGED
@@ -555,7 +555,9 @@ Add to `.vscode/settings.json` for [Tailwind CSS IntelliSense](https://marketpla
555
555
 
556
556
  ```json
557
557
  {
558
- "tailwindCSS.experimental.classRegex": ["ntv\\(([^)]*)\\)", "[\"'`]([^\"'`]*).*?[\"'`]"]
558
+ "tailwindCSS.experimental.classRegex": [
559
+ ["ntv(?:<[\\s\\S]*?>)?\\s*\\(\\s*\\{([\\s\\S]*?)\\}\\s*\\)", "[\"'`]([^\"'`]*)[\"'`]"]
560
+ ]
559
561
  }
560
562
  ```
561
563
 
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 createMergedStyleFn({ twMerge: usesTwMerge = true, twMergeConfig, } = {}) {
17
- const mergeFn = usesTwMerge
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 mergedStyleFn({ class: slotClass, className: slotClassName, ...props } = {}) {
22
+ return function styleFunction({ class: slotClass, className: slotClassName, ...props } = {}) {
23
23
  const styleResults = styleFns.map((fn) => fn(props));
24
- return mergeFn(...styleResults, slotClass, slotClassName);
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 configuredMergeNtv(...styleFns) {
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,mBAAmB,CAAC,EAClC,OAAO,EAAE,WAAW,GAAG,IAAI,EAC3B,aAAa,MACC,EAAE;QAChB,MAAM,OAAO,GAAG,WAAW;YACzB,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,OAAO,CAAC,GAAG,YAAY,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QAC5D,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,kBAAkB,CAChC,GAAG,QAAW;QAEd,OAAO,mBAAmB,CAAC,GAAG,QAAQ,CAAC,CAAC,cAAc,CAErD,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC"}
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 {}>(scheme: Scheme<TProps>, options?: NtvOptions): StyleFunction<TProps>;
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 {}>(scheme: Scheme<TProps>): StyleFunction<TProps>;
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;AA4D3F;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,wBAAgB,GAAG,CAAC,MAAM,SAAS,EAAE,EACnC,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;IAEtD,CAAC,MAAM,SAAS,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACnE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;CAChE,CAIA"}
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 matched = typeof propValue === 'string' && propValue in value;
36
- classes.push(...toClassValues(value[matched ? propValue : '$default']));
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 mergeFn = usesTwMerge
52
+ const mergeClassNames = usesTwMerge
53
53
  ? twMergeConfig
54
54
  ? getCachedTwMerge(twMergeConfig)
55
55
  : twMerge
56
56
  : twJoin;
57
- return function styleFn({ class: slotClass, className: slotClassName, ...props } = {}) {
57
+ return function styleFunction({ class: slotClass, className: slotClassName, ...props } = {}) {
58
58
  const resolvedClasses = resolveConditions(scheme, props);
59
- return mergeFn(...resolvedClasses, slotClass, slotClassName);
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 configuredNtv(scheme) {
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,OAAO,GAAG,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,IAAI,KAAK,CAAC;YACpE,OAAO,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAED,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,OAAO,CAAC,OAAO,CAAC,QAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,CAAC,OAAO,CAAC,KAAmB,CAAC,CAAC;IAErC,OAAO,OAAO,CAAC;AACjB,CAAC;AAmCD,MAAM,UAAU,GAAG,CACjB,MAAc,EACd,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,EAAE,aAAa,KAAiB,EAAE;IAE/D,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;IAC7F,CAAC;IAED,IAAI,WAAW,IAAI,MAAM,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;IACjG,CAAC;IAED,MAAM,OAAO,GAAG,WAAW;QACzB,CAAC,CAAC,aAAa;YACb,CAAC,CAAC,gBAAgB,CAAC,aAAa,CAAC;YACjC,CAAC,CAAC,OAAO;QACX,CAAC,CAAC,MAAM,CAAC;IAEX,OAAO,SAAS,OAAO,CAAC,EACtB,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,OAAO,CAAC,GAAG,eAAe,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;IAC/D,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,UAAU,SAAS,CAAC,cAA2B;IAKnD,OAAO,SAAS,aAAa,CAAC,MAAwC;QACpE,OAAO,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACrC,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"ntv.js","sourceRoot":"","sources":["../src/ntv.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -28,6 +28,11 @@ type VariantMapping<TVariant extends string, TProps extends Props> = {
28
28
  } & {
29
29
  $default?: ClassValue | NestedScheme<TProps>;
30
30
  };
31
+ /**
32
+ * Determines the value type for a property condition based on the property's type.
33
+ * - Boolean properties map to ClassValue or NestedScheme
34
+ * - String properties map to VariantMapping with their possible values
35
+ */
31
36
  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;
32
37
  type PropConditions<TProps extends Props> = {
33
38
  [K in KeysOfUnion<TProps> & string]?: GetPropConditionValue<TProps, K>;
@@ -43,24 +48,65 @@ type NormalizeProps<T, TOriginal = T> = T extends unknown ? Flatten<{
43
48
  } & {
44
49
  [K in Exclude<KeysOfUnion<TOriginal>, keyof T>]?: never;
45
50
  }> : never;
51
+ /**
52
+ * Checks if a props type has at least one required key.
53
+ */
46
54
  type HasRequiredKey<T> = true extends IsRequiredInAny<T, KeysOfUnion<T>> ? true : false;
47
- export type StyleFunction<TProps = Props> = (HasRequiredKey<TProps> extends false ? (props?: NormalizeProps<TProps> & ClassProp) => string : (props: NormalizeProps<TProps> & ClassProp) => string) & {
55
+ /**
56
+ * Function signature for style functions.
57
+ * If the props have no required keys, the props parameter is optional.
58
+ * Otherwise, the props parameter is required.
59
+ */
60
+ type StyleFunctionSignature<TProps> = HasRequiredKey<TProps> extends false ? (props?: NormalizeProps<TProps> & ClassProp) => string : (props: NormalizeProps<TProps> & ClassProp) => string;
61
+ /**
62
+ * A style function that generates class names based on props.
63
+ * Includes metadata about its expected props type for type merging.
64
+ */
65
+ export type StyleFunction<TProps = Props> = StyleFunctionSignature<TProps> & {
48
66
  readonly __ntvProps?: TProps;
49
67
  };
50
68
  export type AnyStyleFunction = ((...args: any[]) => string) & {
51
69
  readonly __ntvProps?: unknown;
52
70
  };
71
+ /**
72
+ * Merges a union of props types into a single props type.
73
+ * Required properties stay required if they are required in ANY union member.
74
+ * Optional properties stay optional only if they are optional in ALL union members.
75
+ */
53
76
  type MergeProps<T> = Flatten<{
54
77
  [K in KeysOfUnion<T> as true extends IsRequiredInAny<T, K> ? K : never]: ValueFromUnion<T, K>;
55
78
  } & {
56
79
  [K in KeysOfUnion<T> as true extends IsRequiredInAny<T, K> ? never : K]?: ValueFromUnion<T, K>;
57
80
  }>;
58
- type ExtractProps<T> = T extends {
81
+ /**
82
+ * Applies MergeProps distributively across all combinations of two union types.
83
+ * This ensures that each combination of union members is properly merged.
84
+ *
85
+ * Example: MergeTwoUnions<A | B, C | D> = MergeProps<A | C> | MergeProps<A | D> | MergeProps<B | C> | MergeProps<B | D>
86
+ */
87
+ type MergeTwoUnions<TFirst, TSecond> = TFirst extends unknown ? TSecond extends unknown ? MergeProps<TFirst | TSecond> : never : never;
88
+ /**
89
+ * Recursively merges a tuple of props types, applying distributive merge at each step.
90
+ * This handles complex cases where multiple style functions with union types are merged.
91
+ *
92
+ * Example: MergeAllProps<[A | B, C, D | E]> produces all combinations:
93
+ * MergeProps<A | C | D> | MergeProps<A | C | E> | MergeProps<B | C | D> | MergeProps<B | C | E>
94
+ */
95
+ 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;
96
+ /**
97
+ * Extracts the props type from a style function.
98
+ * Style functions store their props type in the __ntvProps property.
99
+ */
100
+ type ExtractStyleFunctionProps<T> = T extends {
59
101
  readonly __ntvProps?: infer P;
60
102
  } ? NonNullable<P> : never;
61
- export type MergeStyleFunctionProps<T extends readonly AnyStyleFunction[]> = MergeProps<{
62
- [K in keyof T]: ExtractProps<T[K]>;
63
- }[number]>;
103
+ /**
104
+ * Merges the props types from multiple style functions.
105
+ * Handles union types distributively to ensure all type combinations are properly merged.
106
+ */
107
+ export type MergeStyleFunctionProps<T extends readonly AnyStyleFunction[]> = MergeAllProps<{
108
+ [K in keyof T]: ExtractStyleFunctionProps<T[K]>;
109
+ }>;
64
110
  export type TwMergeConfig = Parameters<typeof extendTailwindMerge>[0];
65
111
  export interface NtvOptions {
66
112
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
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;AAM3B,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;AACzC,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,CAAC,CAAC;AAE1D,MAAM,MAAM,SAAS,GACjB;IAAE,KAAK,CAAC,EAAE,UAAU,CAAC;IAAC,SAAS,CAAC,EAAE,KAAK,CAAA;CAAE,GACzC;IAAE,KAAK,CAAC,EAAE,KAAK,CAAC;IAAC,SAAS,CAAC,EAAE,UAAU,CAAA;CAAE,CAAC;AAM9C,KAAK,OAAO,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC;AAE3C,KAAK,YAAY,CAAC,CAAC,IAAI;KAEpB,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;CACpD,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX,KAAK,YAAY,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AAGzD,KAAK,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,MAAM,CAAC,GAAG,KAAK,CAAC;AAE1D,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS,OAAO,GAC9D,CAAC,SAAS,MAAM,CAAC,GACf,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,GACvB,IAAI,GACJ,KAAK,GACP,KAAK,GACP,KAAK,CAAC;AAEV,KAAK,cAAc,CAAC,CAAC,EAAE,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS,OAAO,GAC7D,CAAC,SAAS,MAAM,CAAC,GACf,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,GACxB,KAAK,GACP,KAAK,CAAC;AAOV,KAAK,YAAY,CAAC,MAAM,SAAS,KAAK,GAAG,EAAE,IAAI;IAC7C,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;CAC9C,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;AAE3B,KAAK,cAAc,CAAC,QAAQ,SAAS,MAAM,EAAE,MAAM,SAAS,KAAK,IAAI;KAClE,CAAC,IAAI,QAAQ,CAAC,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC;CACpD,GAAG;IACF,QAAQ,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;CAC9C,CAAC;AAEF;;;;GAIG;AACH,KAAK,qBAAqB,CAAC,MAAM,SAAS,KAAK,EAAE,CAAC,SAAS,WAAW,IACpE,WAAW,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,OAAO,GAClD,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC,GACjC,WAAW,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,MAAM,GACnD,cAAc,CAAC,WAAW,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,GAC9D,KAAK,CAAC;AAEd,KAAK,cAAc,CAAC,MAAM,SAAS,KAAK,IAAI;KACzC,CAAC,IAAI,WAAW,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,qBAAqB,CAAC,MAAM,EAAE,CAAC,CAAC;CACvE,CAAC;AAGF,MAAM,MAAM,MAAM,CAAC,MAAM,SAAS,KAAK,GAAG,EAAE,IAAI;IAC9C,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,UAAU,CAAC;CACvB,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;AAM3B,KAAK,cAAc,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,OAAO,GACrD,OAAO,CACL;KAAG,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG;KAAG,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG;KACpE,CAAC,IAAI,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK;CACxD,CACF,GACD,KAAK,CAAC;AAEV;;GAEG;AACH,KAAK,cAAc,CAAC,CAAC,IAAI,IAAI,SAAS,eAAe,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AAExF;;;;GAIG;AACH,KAAK,sBAAsB,CAAC,MAAM,IAChC,cAAc,CAAC,MAAM,CAAC,SAAS,KAAK,GAChC,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,GAAG,SAAS,KAAK,MAAM,GACtD,CAAC,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,GAAG,SAAS,KAAK,MAAM,CAAC;AAE5D;;;GAGG;AACH,MAAM,MAAM,aAAa,CAAC,MAAM,GAAG,KAAK,IAAI,sBAAsB,CAAC,MAAM,CAAC,GAAG;IAC3E,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAGF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,GAAG;IAC5D,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC/B,CAAC;AAMF;;;;GAIG;AACH,KAAK,UAAU,CAAC,CAAC,IAAI,OAAO,CAC1B;KACG,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,IAAI,SAAS,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC;CAC9F,GAAG;KACD,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,IAAI,SAAS,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC;CAC/F,CACF,CAAC;AAEF;;;;;GAKG;AACH,KAAK,cAAc,CAAC,MAAM,EAAE,OAAO,IAAI,MAAM,SAAS,OAAO,GACzD,OAAO,SAAS,OAAO,GACrB,UAAU,CAAC,MAAM,GAAG,OAAO,CAAC,GAC5B,KAAK,GACP,KAAK,CAAC;AAEV;;;;;;GAMG;AACH,KAAK,aAAa,CAAC,MAAM,SAAS,SAAS,OAAO,EAAE,IAAI,MAAM,SAAS,SAAS,EAAE,GAC9E,OAAO,GACP,MAAM,SAAS,SAAS,CAAC,MAAM,KAAK,CAAC,GACnC,KAAK,GACL,MAAM,SAAS,SAAS,CAAC,MAAM,MAAM,EAAE,MAAM,OAAO,EAAE,GAAG,MAAM,KAAK,CAAC,GACnE,aAAa,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,GAC1D,OAAO,CAAC;AAEhB;;;GAGG;AACH,KAAK,yBAAyB,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,CAAA;CAAE,GAC3E,WAAW,CAAC,CAAC,CAAC,GACd,KAAK,CAAC;AAEV;;;GAGG;AACH,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,SAAS,gBAAgB,EAAE,IAAI,aAAa,CAAC;KACxF,CAAC,IAAI,MAAM,CAAC,GAAG,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAChD,CAAC,CAAC;AAMH,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;AAEtE,MAAM,WAAW,UAAU;IACzB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nestable-tailwind-variants",
3
- "version": "0.4.0",
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.3.1",
28
- "@commitlint/config-conventional": "^20.3.1",
27
+ "@commitlint/cli": "^20.4.0",
28
+ "@commitlint/config-conventional": "^20.4.0",
29
29
  "bumpp": "^10.4.0",
30
- "knip": "^5.82.0",
30
+ "knip": "^5.82.1",
31
31
  "lint-staged": "^16.2.7",
32
- "oxfmt": "^0.25.0",
33
- "oxlint": "^1.39.0",
32
+ "oxfmt": "^0.27.0",
33
+ "oxlint": "^1.42.0",
34
34
  "typescript": "^5.9.3",
35
- "vitest": "^4.0.17",
36
- "node": "runtime:^24.12.0"
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.12.0",
45
+ "version": "^24.13.0",
46
46
  "onFail": "download"
47
47
  }
48
48
  },